Title: [170318] trunk/Source/WebCore
Revision
170318
Author
jer.no...@apple.com
Date
2014-06-23 14:27:59 -0700 (Mon, 23 Jun 2014)

Log Message

[MSE][Mac] Crash in SourceBuffer::sourceBufferPrivateDidReceiveRenderingError()
https://bugs.webkit.org/show_bug.cgi?id=134211

Reviewed by Eric Carlson.

Null-check m_source before dereferencing, as the SourceBuffer may have been removed
from its MediaSource before this error was received.

* Modules/mediasource/SourceBuffer.cpp:
(WebCore::SourceBuffer::sourceBufferPrivateDidReceiveRenderingError):

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (170317 => 170318)


--- trunk/Source/WebCore/ChangeLog	2014-06-23 21:24:07 UTC (rev 170317)
+++ trunk/Source/WebCore/ChangeLog	2014-06-23 21:27:59 UTC (rev 170318)
@@ -1,3 +1,16 @@
+2014-06-23  Jer Noble  <jer.no...@apple.com>
+
+        [MSE][Mac] Crash in SourceBuffer::sourceBufferPrivateDidReceiveRenderingError()
+        https://bugs.webkit.org/show_bug.cgi?id=134211
+
+        Reviewed by Eric Carlson.
+
+        Null-check m_source before dereferencing, as the SourceBuffer may have been removed
+        from its MediaSource before this error was received.
+
+        * Modules/mediasource/SourceBuffer.cpp:
+        (WebCore::SourceBuffer::sourceBufferPrivateDidReceiveRenderingError):
+
 2014-06-23  Joseph Pecoraro  <pecor...@apple.com>
 
         Reduce synchronous layout triggered by _javascript_-based media controls

Modified: trunk/Source/WebCore/Modules/mediasource/SourceBuffer.cpp (170317 => 170318)


--- trunk/Source/WebCore/Modules/mediasource/SourceBuffer.cpp	2014-06-23 21:24:07 UTC (rev 170317)
+++ trunk/Source/WebCore/Modules/mediasource/SourceBuffer.cpp	2014-06-23 21:27:59 UTC (rev 170318)
@@ -537,7 +537,8 @@
 
 void SourceBuffer::sourceBufferPrivateDidReceiveRenderingError(SourceBufferPrivate*, int)
 {
-    m_source->streamEndedWithError(decodeError(), IgnorableExceptionCode());
+    if (!isRemoved())
+        m_source->streamEndedWithError(decodeError(), IgnorableExceptionCode());
 }
 
 void SourceBuffer::removeCodedFrames(const MediaTime& start, const MediaTime& end)
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to