Title: [201521] trunk/Source/WebCore
Revision
201521
Author
cdu...@apple.com
Date
2016-05-31 13:32:21 -0700 (Tue, 31 May 2016)

Log Message

Regression(r201482): Crash under dispatch_semaphore_wait
https://bugs.webkit.org/show_bug.cgi?id=158230
<rdar://problem/26534698>

Reviewed by Eric Carlson.

Stop moving hasSessionSemaphore in the lambda capture since it is used in
dispatch_semaphore_wait() call after the callOnMainThread() call.

No new tests, already covered by tests that are crashing on the bots.

* platform/graphics/avfoundation/objc/SourceBufferPrivateAVFObjC.mm:
(-[WebAVStreamDataParserListener streamDataParser:didProvideContentKeyRequestInitializationData:forTrackID:]):

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (201520 => 201521)


--- trunk/Source/WebCore/ChangeLog	2016-05-31 19:45:10 UTC (rev 201520)
+++ trunk/Source/WebCore/ChangeLog	2016-05-31 20:32:21 UTC (rev 201521)
@@ -1,3 +1,19 @@
+2016-05-31  Chris Dumez  <cdu...@apple.com>
+
+        Regression(r201482): Crash under dispatch_semaphore_wait
+        https://bugs.webkit.org/show_bug.cgi?id=158230
+        <rdar://problem/26534698>
+
+        Reviewed by Eric Carlson.
+
+        Stop moving hasSessionSemaphore in the lambda capture since it is used in
+        dispatch_semaphore_wait() call after the callOnMainThread() call.
+
+        No new tests, already covered by tests that are crashing on the bots.
+
+        * platform/graphics/avfoundation/objc/SourceBufferPrivateAVFObjC.mm:
+        (-[WebAVStreamDataParserListener streamDataParser:didProvideContentKeyRequestInitializationData:forTrackID:]):
+
 2016-05-31  Brady Eidson  <beid...@apple.com>
 
         Make createCrossThreadTask() functions return on the stack instead of the heap.

Modified: trunk/Source/WebCore/platform/graphics/avfoundation/objc/SourceBufferPrivateAVFObjC.mm (201520 => 201521)


--- trunk/Source/WebCore/platform/graphics/avfoundation/objc/SourceBufferPrivateAVFObjC.mm	2016-05-31 19:45:10 UTC (rev 201520)
+++ trunk/Source/WebCore/platform/graphics/avfoundation/objc/SourceBufferPrivateAVFObjC.mm	2016-05-31 20:32:21 UTC (rev 201521)
@@ -275,7 +275,7 @@
     RetainPtr<WebAVStreamDataParserListener> protectedSelf = self;
 
     OSObjectPtr<dispatch_semaphore_t> hasSessionSemaphore = adoptOSObject(dispatch_semaphore_create(0));
-    callOnMainThread([protectedSelf = WTFMove(protectedSelf), protectedInitData = RetainPtr<NSData>(initData), trackID, hasSessionSemaphore = WTFMove(hasSessionSemaphore)] {
+    callOnMainThread([protectedSelf = WTFMove(protectedSelf), protectedInitData = RetainPtr<NSData>(initData), trackID, hasSessionSemaphore] {
         if (protectedSelf->_parent)
             protectedSelf->_parent->didProvideContentKeyRequestInitializationDataForTrackID(protectedInitData.get(), trackID, hasSessionSemaphore);
     });
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to