Title: [96035] branches/chromium/835/Source/WebCore/webaudio/OfflineAudioDestinationNode.cpp
Revision
96035
Author
c...@chromium.org
Date
2011-09-26 16:35:01 -0700 (Mon, 26 Sep 2011)

Log Message

Merge 94984 - Address lifetime issues in OfflineAudioDestinationNode

BUG=96150
Review URL: http://codereview.chromium.org/8044035

Modified Paths

Diff

Modified: branches/chromium/835/Source/WebCore/webaudio/OfflineAudioDestinationNode.cpp (96034 => 96035)


--- branches/chromium/835/Source/WebCore/webaudio/OfflineAudioDestinationNode.cpp	2011-09-26 23:31:04 UTC (rev 96034)
+++ branches/chromium/835/Source/WebCore/webaudio/OfflineAudioDestinationNode.cpp	2011-09-26 23:35:01 UTC (rev 96035)
@@ -52,6 +52,9 @@
 
 OfflineAudioDestinationNode::~OfflineAudioDestinationNode()
 {
+    if (m_renderThread)
+        waitForThreadCompletion(m_renderThread, 0);
+    
     uninitialize();
 }
 
@@ -143,6 +146,8 @@
     }
     
     // Our work is done. Let the AudioContext know.
+    // See corresponding deref() call in notifyCompleteDispatch().
+    ref();
     callOnMainThread(notifyCompleteDispatch, this);
 }
 
@@ -154,6 +159,7 @@
         return;
 
     destinationNode->notifyComplete();
+    destinationNode->deref();
 }
 
 void OfflineAudioDestinationNode::notifyComplete()
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes

Reply via email to