-
-
Notifications
You must be signed in to change notification settings - Fork 2.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Fixed an edge case with Safari ("infinite" html5 audio -> the end event won't run) #658
Conversation
In particular, I'm not sure about removing the event listener after the event is run. I did it because the other event listeners did so too. Are the Btw. to reproducing Safari setting the duration to infinite isn't too easy: it happens to me only if I shut down the server, let the loading fail, and then boot it up, and try loading the same sound again. Safari then sends a |
Okay, I did one change: it now checks if the duration was set to infinite, and updates the parent _duration field and the default sprite, so the subsequent calls to |
Rebased the commits on master. @goldfire, do you think you could pull these in? They fix an edge case on Safari. |
This is still an issue on Safari. Could this fix be merged in please? |
I'd love to see this as merged too. I wonder if this project is abandoned / not maintained? |
@golddranks The project is definitely maintained and not abandoned. We've just gone through some major crunch with a big game launch on Steam last week and I've barely had time to think about anything else. I'll be catching up on howler issues/pr's in the coming weeks. |
Fixes #657 . I'm not well-versed with the codebase, so I tried to code only for the bugged case (checks to call
_ended()
only if the audio duration was indeed said to be infinite), but it might be, of course, that there is more related, unaccounted edge cases.