From 2a7f8441dd1d587ebe57c8e59125f9b0555e1430 Mon Sep 17 00:00:00 2001 From: jorsi Date: Sun, 21 Jun 2020 13:53:08 -0400 Subject: [PATCH] fix invalid state error in safari when trying to stop background music --- script/audio.js | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/script/audio.js b/script/audio.js index 8c3f9f8..a49555b 100644 --- a/script/audio.js +++ b/script/audio.js @@ -70,7 +70,9 @@ var AudioEngine = { var fadeTime = AudioEngine._audioContext.currentTime + AudioEngine.FADE_TIME; // fade out current background music - if (AudioEngine._currentBackgroundMusic) { + if (AudioEngine._currentBackgroundMusic && + AudioEngine._currentBackgroundMusic.source && + AudioEngine._currentBackgroundMusic.source.playbackState !== 0) { var currentBackgroundGainValue = AudioEngine._currentBackgroundMusic.envelope.gain.value; AudioEngine._currentBackgroundMusic.envelope.gain.cancelScheduledValues(AudioEngine._audioContext.currentTime); AudioEngine._currentBackgroundMusic.envelope.gain.setValueAtTime(currentBackgroundGainValue, AudioEngine._audioContext.currentTime);