Closed Bug 1372715 Opened 7 years ago Closed 7 years ago

Intermittent dom/media/test/test_webvtt_event_same_time.html | cue1 onexit event before than cue2 onenter

Categories

(Core :: Audio/Video: Playback, defect)

defect
Not set
normal

Tracking

()

RESOLVED FIXED
mozilla56
Tracking Status
firefox-esr52 --- unaffected
firefox54 --- unaffected
firefox55 --- unaffected
firefox56 --- fixed

People

(Reporter: intermittent-bug-filer, Assigned: bechen)

References

Details

(Keywords: intermittent-failure, Whiteboard: [stockwell fixed:product])

Attachments

(1 file)

Assignee: nobody → bechen
Blocks: 1368489
09:06:14     INFO -  GECKO(1336) | time 2
09:06:14     INFO -  GECKO(1336) | cue2.onenter 2
09:06:14     INFO -  TEST-INFO | started process screenshot
09:06:14     INFO -  TEST-INFO | screenshot: exit 0
09:06:14     INFO -  Buffered messages logged at 09:06:12
09:06:14     INFO -  152 INFO --- create video ---
09:06:14     INFO -  Buffered messages logged at 09:06:13
09:06:14     INFO -  153 INFO TEST-PASS | dom/media/test/test_webvtt_event_same_time.html | cue3 onenter event before than cue4 onenter
09:06:14     INFO -  Buffered messages finished
09:06:14    ERROR -  154 INFO TEST-UNEXPECTED-FAIL | dom/media/test/test_webvtt_event_same_time.html | cue1 onexit event before than cue2 onenter

Seems that something wrong when the video.currentTime is exactly equal to 2. cue1[1-2], cue2[2-3]
Comment on attachment 8877948 [details]
Bug 1372715 - TimeMarchesOn step 1, fix the EndTime check for "current cue".

https://reviewboard.mozilla.org/r/149356/#review154086

::: dom/media/TextTrack.cpp:218
(Diff revision 1)
>    // added, that have valid start and end times for the current playback time.
>    // We can stop iterating safely once we encounter a cue that does not have
>    // a valid start time as the cue list is sorted.
>    for (; mCuePos < mCueList->Length() &&
>           (*mCueList)[mCuePos]->StartTime() <= playbackTime; mCuePos++) {
> -    if ((*mCueList)[mCuePos]->EndTime() >= playbackTime) {
> +    if ((*mCueList)[mCuePos]->EndTime() > playbackTime) {

Oops!
Attachment #8877948 - Flags: review?(giles) → review+
Doesn't seem to have resolved the issue on the try push though?
(In reply to Ralph Giles (:rillian) | needinfo me from comment #6)
> Doesn't seem to have resolved the issue on the try push though?

Now, I will hard code the playbackTime to any value to verify the bug at my local machine.
Here http://searchfox.org/mozilla-central/source/dom/media/TextTrack.cpp#208
The logic of add/remove cue to mActiveCueList need to be consistent. So need to replace the "<" to "<=".
Keywords: checkin-needed
Pushed by ryanvm@gmail.com:
https://hg.mozilla.org/integration/autoland/rev/61e0bf2ab0aa
TimeMarchesOn step 1, fix the EndTime check for "current cue". r=rillian
Keywords: checkin-needed
https://hg.mozilla.org/mozilla-central/rev/61e0bf2ab0aa
Status: NEW → RESOLVED
Closed: 7 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla56
Whiteboard: [stockwell fixed:product]
Depends on: 1374341
Blocks: 1373975
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: