| Summary: | [EME][GStreamer] onencrypted should be dispatched iff readyState >= HAVE_METADATA | ||||||
|---|---|---|---|---|---|---|---|
| Product: | WebKit | Reporter: | Charlie Turner <cturner> | ||||
| Component: | WebKitGTK | Assignee: | Nobody <webkit-unassigned> | ||||
| Status: | NEW --- | ||||||
| Severity: | Normal | CC: | bugs-noreply | ||||
| Priority: | P2 | ||||||
| Version: | WebKit Nightly Build | ||||||
| Hardware: | Unspecified | ||||||
| OS: | Unspecified | ||||||
| Bug Depends on: | 210644 | ||||||
| Bug Blocks: | |||||||
| Attachments: |
|
||||||
|
Description
Charlie Turner
2020-04-07 08:10:13 PDT
Created attachment 395683 [details]
Event diagram showing race condition.
The append splits into two varied operations, one to append the audio, one the video. If onencrypted happens as (1), then the readyState can be closed before both updates have ended, breaking the test. If it happens as (2), the test passes. This is a classic race conditioning, most likely resulting from the onencrypted event being dispatched too soon.
The only test filed under this bug was: - imported/w3c/web-platform-tests/encrypted-media/clearkey-mp4-reset-src-after-setmediakeys.https.html GTK post-commit test bot reports the test has been failing consistently for the last 4000 revisions. Diff: --- /home/buildbot/worker/gtk-linux-64-release-tests/build/layout-test-results/imported/w3c/web-platform-tests/encrypted-media/clearkey-mp4-reset-src-after-setmediakeys.https-expected.txt +++ /home/buildbot/worker/gtk-linux-64-release-tests/build/layout-test-results/imported/w3c/web-platform-tests/encrypted-media/clearkey-mp4-reset-src-after-setmediakeys.https-actual.txt @@ -1,3 +1,5 @@ -PASS Reset src after setMediaKeys(). +Harness Error (FAIL), message = Test named "Reset src after setMediaKeys()." passed a function to `async_test` that returned a value. Consider using `promise_test` instead when using Promises or async/await. +TIMEOUT Reset src after setMediaKeys(). Test timed out + |