New issue
Advanced search Search tips

Issue 854711 link

Starred by 1 user

Issue metadata

Status: Duplicate
Merged: issue 641121
Owner:
Closed: Jun 2018
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 3
Type: Bug



Sign in to add a comment

Fix regression in external/wpt/media-source/mediasource-append-buffer.html's "Test appendBuffer events order."

Project Member Reported by wolenetz@chromium.org, Jun 20 2018

Issue description

Blocking: 854779
See also bug 854779 for some follow-up test case deduplication across WPT and BLINK for mediasource-append-buffer.html.
Inspecting the contents of the roll, the test.step_func addition within it allows the function's assert failures to actually cause the test to fail. In Chrome before the roll, those asserts were sometimes failing, but the test object didn't know, nor report, such failures.

So I'll look into whether the test or Chrome is behaving incorrectly.
Blocking: 854789
Labels: -Pri-2 -M-69 Pri-3
The underlying issue exposed by this (IMHO correct test update in the roll) is a Chrome implementation problem: see bug 641121. tl;dr: readyState change to HAVE_METADATA and loadedmetadata event dispatch might not happen until *after* updateend event dispatch due to the way we plumb the readyState change across threads in Chrome currently.

Fixing that will likely be easier once we do MSE parsing off the renderer main thread, to either eliminate the thread hop through pipeline thread, or to at least let the renderer proceed and not block while such hop is joined to ensure readyState transition in HTMLMediaElement is done on initial HAVE_METADATA prior to the updateend and !updating transition for the associated SourceBuffer having that last first init segment.

workaround for web authors: wait for 'loadedmetadata' in such case; then readyState should be >= HAVE_METADATA.


Mergedinto: 641121
Status: Duplicate (was: Assigned)
Blocking: -854779
Blocking: -854789

Sign in to add a comment