diff options
author | Alon Zakai <alonzakai@gmail.com> | 2013-05-21 15:38:59 -0700 |
---|---|---|
committer | Alon Zakai <alonzakai@gmail.com> | 2013-05-21 15:38:59 -0700 |
commit | 7102046e02fdc97ce7197302b20d50497b3980f0 (patch) | |
tree | 30782c2071382adf96968d4ceb285ff00513c422 /src | |
parent | 5382cbaf1ebdc948f97533c8a2bfa6f9f23d875e (diff) | |
parent | 99dcf280fa60b1f81140cf3de91498729af5c677 (diff) |
Merge pull request #1199 from j4m3z0r/sdl-fixes
Fix Mix_PlayMusic's handling of loop argument in SDL
Diffstat (limited to 'src')
-rw-r--r-- | src/library_sdl.js | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/src/library_sdl.js b/src/library_sdl.js index 75544765..a5080a99 100644 --- a/src/library_sdl.js +++ b/src/library_sdl.js @@ -1349,6 +1349,9 @@ var LibrarySDL = { channelInfo.audio = audio = audio.cloneNode(true); audio.numChannels = info.audio.numChannels; audio.frequency = info.audio.frequency; + + // TODO: handle N loops. Behavior matches Mix_PlayMusic + audio.loop = loops != 0; if (SDL.channelFinished) { audio['onended'] = function() { // TODO: cache these Runtime.getFuncWrapper(SDL.channelFinished, 'vi')(channel); @@ -1450,7 +1453,7 @@ var LibrarySDL = { loops = Math.max(loops, 1); var audio = SDL.audios[id].audio; if (!audio) return 0; - audio.loop = loops != 1; // TODO: handle N loops for finite N + audio.loop = loops != 0; // TODO: handle N loops for finite N if (SDL.audios[id].buffer) { audio["mozWriteAudio"](SDL.audios[id].buffer); } else { |