Title: [209469] trunk/Source/WebCore
- Revision
- 209469
- Author
- jer.no...@apple.com
- Date
- 2016-12-07 12:32:39 -0800 (Wed, 07 Dec 2016)
Log Message
ASSERT crash while running media-source/mediasource-activesourcebuffers.html under Stress GC bot.
https://bugs.webkit.org/show_bug.cgi?id=165514
Reviewed by Eric Carlson.
If a track associated with MSE is disabled after a SourceBuffer begins parsing a queued
append operation, SourceBuffer can get into a state where it asks SourceBufferPrivateAVFObjC
if it is ready to accept data for that disabled track. This causes an ASSERT_NOT_REACHED in
isReadyForMoreData().
However, this seems to be a valid condition; we can safely just return "false" from
isReadyForMoreSamples() (and also bail from notifyClientWhenReadyForMoreSamples()) when asked
about a disabled track.
* platform/graphics/avfoundation/objc/SourceBufferPrivateAVFObjC.mm:
(WebCore::SourceBufferPrivateAVFObjC::isReadyForMoreSamples):
(WebCore::SourceBufferPrivateAVFObjC::notifyClientWhenReadyForMoreSamples):
Modified Paths
Diff
Modified: trunk/Source/WebCore/ChangeLog (209468 => 209469)
--- trunk/Source/WebCore/ChangeLog 2016-12-07 20:29:55 UTC (rev 209468)
+++ trunk/Source/WebCore/ChangeLog 2016-12-07 20:32:39 UTC (rev 209469)
@@ -1,3 +1,23 @@
+2016-12-07 Jer Noble <jer.no...@apple.com>
+
+ ASSERT crash while running media-source/mediasource-activesourcebuffers.html under Stress GC bot.
+ https://bugs.webkit.org/show_bug.cgi?id=165514
+
+ Reviewed by Eric Carlson.
+
+ If a track associated with MSE is disabled after a SourceBuffer begins parsing a queued
+ append operation, SourceBuffer can get into a state where it asks SourceBufferPrivateAVFObjC
+ if it is ready to accept data for that disabled track. This causes an ASSERT_NOT_REACHED in
+ isReadyForMoreData().
+
+ However, this seems to be a valid condition; we can safely just return "false" from
+ isReadyForMoreSamples() (and also bail from notifyClientWhenReadyForMoreSamples()) when asked
+ about a disabled track.
+
+ * platform/graphics/avfoundation/objc/SourceBufferPrivateAVFObjC.mm:
+ (WebCore::SourceBufferPrivateAVFObjC::isReadyForMoreSamples):
+ (WebCore::SourceBufferPrivateAVFObjC::notifyClientWhenReadyForMoreSamples):
+
2016-12-07 Dave Hyatt <hy...@apple.com>
[CSS Parser] Eliminate the Scope class and fold it into CSSTokenizer
Modified: trunk/Source/WebCore/platform/graphics/avfoundation/objc/SourceBufferPrivateAVFObjC.mm (209468 => 209469)
--- trunk/Source/WebCore/platform/graphics/avfoundation/objc/SourceBufferPrivateAVFObjC.mm 2016-12-07 20:29:55 UTC (rev 209468)
+++ trunk/Source/WebCore/platform/graphics/avfoundation/objc/SourceBufferPrivateAVFObjC.mm 2016-12-07 20:32:39 UTC (rev 209469)
@@ -965,8 +965,6 @@
return [m_displayLayer isReadyForMoreMediaData];
else if (m_audioRenderers.contains(trackID))
return [m_audioRenderers.get(trackID) isReadyForMoreMediaData];
- else
- ASSERT_NOT_REACHED();
return false;
}
@@ -1030,8 +1028,7 @@
[m_audioRenderers.get(trackID) requestMediaDataWhenReadyOnQueue:dispatch_get_main_queue() usingBlock:^{
didBecomeReadyForMoreSamples(trackID);
}];
- } else
- ASSERT_NOT_REACHED();
+ }
}
}
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes