[WebAudio] Release the AudioDestination when uninitializing DefaultAudioDestinationNode
authorcommit-queue@webkit.org <commit-queue@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Fri, 18 Jan 2019 14:12:53 +0000 (14:12 +0000)
committercommit-queue@webkit.org <commit-queue@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Fri, 18 Jan 2019 14:12:53 +0000 (14:12 +0000)
https://bugs.webkit.org/show_bug.cgi?id=192590

Patch by Yacine Bandou <yacine.bandou@softathome.com> on 2019-01-18
Reviewed by Philippe Normand.

When we uninitialize DefaultAudioDestinationNode, the AudioDestination is stopped but not destroyed.

On some platforms the resources are allocated and released with the AudioDestination, thus when we uninitialize
DefaultAudioDestinationNode we don't release resources because the AudioDestination is not destroyed.

* Modules/webaudio/DefaultAudioDestinationNode.cpp:
(WebCore::DefaultAudioDestinationNode::uninitialize):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@240143 268f45cc-cd09-0410-ab3c-d52691b4dbfc

Source/WebCore/ChangeLog
Source/WebCore/Modules/webaudio/DefaultAudioDestinationNode.cpp

index a103b7f..fe75934 100644 (file)
@@ -1,5 +1,20 @@
 2019-01-18  Yacine Bandou  <yacine.bandou@softathome.com>
 
+        [WebAudio] Release the AudioDestination when uninitializing DefaultAudioDestinationNode
+        https://bugs.webkit.org/show_bug.cgi?id=192590
+
+        Reviewed by Philippe Normand.
+
+        When we uninitialize DefaultAudioDestinationNode, the AudioDestination is stopped but not destroyed.
+
+        On some platforms the resources are allocated and released with the AudioDestination, thus when we uninitialize
+        DefaultAudioDestinationNode we don't release resources because the AudioDestination is not destroyed.
+
+        * Modules/webaudio/DefaultAudioDestinationNode.cpp:
+        (WebCore::DefaultAudioDestinationNode::uninitialize):
+
+2019-01-18  Yacine Bandou  <yacine.bandou@softathome.com>
+
         [WebAudio] Call AudioContext::uninitialize() immediately when the AudioContext is stopped
         https://bugs.webkit.org/show_bug.cgi?id=192586
 
index 17ad871..7ace7e7 100644 (file)
@@ -69,6 +69,7 @@ void DefaultAudioDestinationNode::uninitialize()
         return;
 
     m_destination->stop();
+    m_destination = nullptr;
     m_numberOfInputChannels = 0;
 
     AudioNode::uninitialize();