RESOLVED FIXED 133459
REGRESSION(169440): Repro crash when playing a video with captions
https://bugs.webkit.org/show_bug.cgi?id=133459
Summary REGRESSION(169440): Repro crash when playing a video with captions
Brent Fulgham
Reported 2014-06-02 13:59:05 PDT
My recent change <http://trac.webkit.org/changeset/169440> introduced a crash when viewing video with paint-on captions. The problems were related to two issues: 1. WebKit was properly identifying new cues that extended existing cues, but was not updating the bookkeeping so that the extended cue would be updated to reflect the proper end time of the cue. This resulted in some of these cues sticking around for the remaining duration of the video. 2. The crash was being caused by the logic that updates the cue time. It removes and then re-adds the cue during the time modification, but was not updating the reference count on the cue. This caused the cue to be cleaned up during the update operation, causing the crash. This change corrects both of these problems.
Attachments
Patch (7.75 KB, patch)
2014-06-02 14:03 PDT, Brent Fulgham
no flags
Patch (9.54 KB, patch)
2014-06-05 17:39 PDT, Brent Fulgham
eric.carlson: review+
buildbot: commit-queue-
Archive of layout-test-results from webkit-ews-09 for mac-mountainlion-wk2 (619.71 KB, application/zip)
2014-06-05 22:46 PDT, Build Bot
no flags
Brent Fulgham
Comment 1 2014-06-02 13:59:13 PDT
Brent Fulgham
Comment 2 2014-06-02 14:03:33 PDT
Brent Fulgham
Comment 3 2014-06-05 17:39:29 PDT
Eric Carlson
Comment 4 2014-06-05 21:43:42 PDT
Comment on attachment 232595 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=232595&action=review > Source/WebCore/platform/graphics/avfoundation/InbandTextTrackPrivateAVF.cpp:405 > + LOG(Media, "InbandTextTrackPrivateAVF::processCue(%p) - found an extension cue for time = %.2f, position = %.2f, line = %.2f", this, arrivingCue->startTime(), arrivingCue->position(), arrivingCue->line()); Won't this log about every cue regardless of whether or not it extends a cue?
Build Bot
Comment 5 2014-06-05 22:46:54 PDT
Comment on attachment 232595 [details] Patch Attachment 232595 [details] did not pass mac-wk2-ews (mac-wk2): Output: http://webkit-queues.appspot.com/results/6501615309684736 New failing tests: media/W3C/audio/canPlayType/canPlayType_application_octet_stream_with_codecs_1.html
Build Bot
Comment 6 2014-06-05 22:46:58 PDT
Created attachment 232604 [details] Archive of layout-test-results from webkit-ews-09 for mac-mountainlion-wk2 The attached test failures were seen while running run-webkit-tests on the mac-wk2-ews. Bot: webkit-ews-09 Port: mac-mountainlion-wk2 Platform: Mac OS X 10.8.5
Brent Fulgham
Comment 7 2014-06-06 08:55:05 PDT
Comment on attachment 232595 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=232595&action=review >> Source/WebCore/platform/graphics/avfoundation/InbandTextTrackPrivateAVF.cpp:405 >> + LOG(Media, "InbandTextTrackPrivateAVF::processCue(%p) - found an extension cue for time = %.2f, position = %.2f, line = %.2f", this, arrivingCue->startTime(), arrivingCue->position(), arrivingCue->line()); > > Won't this log about every cue regardless of whether or not it extends a cue? Whoops! Yes, I'll fix that.
Brent Fulgham
Comment 8 2014-06-06 09:21:06 PDT
Note You need to log in before you can comment on or make changes to this bug.