From 0816011e86a5ec4dba8e551d602afdbd6b874a09 Mon Sep 17 00:00:00 2001 From: Fabio Alessandrelli Date: Mon, 8 Mar 2021 14:07:19 +0100 Subject: [HTML5] Catch audio worklet errors on disconnect. Which could happen if the worklet was not fully loaded, or the audio context had already aborted. --- platform/javascript/js/libs/library_godot_audio.js | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'platform/javascript/js') diff --git a/platform/javascript/js/libs/library_godot_audio.js b/platform/javascript/js/libs/library_godot_audio.js index 8e385e9176..ac4055516c 100644 --- a/platform/javascript/js/libs/library_godot_audio.js +++ b/platform/javascript/js/libs/library_godot_audio.js @@ -238,6 +238,9 @@ const GodotAudioWorklet = { close: function () { return new Promise(function (resolve, reject) { + if (GodotAudioWorklet.promise === null) { + return; + } GodotAudioWorklet.promise.then(function () { GodotAudioWorklet.worklet.port.postMessage({ 'cmd': 'stop', @@ -247,7 +250,7 @@ const GodotAudioWorklet = { GodotAudioWorklet.worklet = null; GodotAudioWorklet.promise = null; resolve(); - }); + }).catch(function (err) { /* aborted? */ }); }); }, }, -- cgit v1.2.3