Closed Bug 1803258 Opened 2 years ago Closed 2 years ago

[wpt-sync] Sync PR 37244 - Validate execution context before creating setSinkIdResolver

Categories

(Core :: Web Audio, task, P4)

task

Tracking

()

RESOLVED FIXED
109 Branch
Tracking Status
firefox109 --- fixed

People

(Reporter: wpt-sync, Unassigned)

References

()

Details

(Whiteboard: [wptsync downstream])

Sync web-platform-tests PR 37244 into mozilla-central (this bug is closed when the sync is complete).

PR: https://github.com/web-platform-tests/wpt/pull/37244
Details from upstream follow.

Alvin Ji <alvinji@chromium.org> wrote:

Validate execution context before creating setSinkIdResolver

A crash is reported by bug 1392736. Null pointer dereference happend
when the setSinkId request issued from a audio context in a detached
document. Beside fixing the reported crash, this CL also move the
condition check of audio context state together to the beginning of
AudioContext::setSinkId and add new WPT test for those conditions
throw InvalidStateError DOMException.

Bug: 1392736
Change-Id: I6ca96b631013126c9b7f2e54b192c67649917291
Reviewed-on: https://chromium-review.googlesource.com/4056695
WPT-Export-Revision: e27ad57531c020616a839318c61f8e0d6d0200f2

Component: web-platform-tests → Web Audio
Product: Testing → Core

CI Results

Ran 10 Firefox configurations based on mozilla-central, and Firefox, Chrome, and Safari on GitHub CI

Total 1 tests and 7 subtests

Status Summary

Firefox

TIMEOUT: 1
ERROR : 1
NOTRUN : 7

Chrome

OK : 1
FAIL : 7

Safari

ERROR : 1
NOTRUN : 7

Links

Gecko CI (Treeherder)
GitHub PR Head
GitHub PR Base

Details

New Tests That Don't Pass

  • /webaudio/the-audio-api/the-audiocontext-interface/audiocontext-sinkid-setsinkid.https.html [wpt.fyi]: ERROR [Gecko-android-em-7.0-x86_64-lite-qr-opt-geckoview, Gecko-android-em-7.0-x86_64-qr-debug-geckoview, Gecko-android-em-7.0-x86_64-qr-opt-geckoview, Gecko-linux1804-64-qr-debug, Gecko-linux1804-64-qr-opt, Gecko-windows10-32-2004-qr-debug, Gecko-windows10-32-2004-qr-opt, Gecko-windows10-64-2004-qr-debug, Gecko-windows10-64-2004-qr-opt, GitHub], TIMEOUT [Gecko-android-em-7.0-x86_64-qr-debug-isolated-process-geckoview] (Chrome: OK, Safari: ERROR)
    • setSinkId() with a valid device identifier should succeeded.: NOTRUN (Chrome: FAIL, Safari: NOTRUN)
    • setSinkId() with the same sink ID should resolve immediately.: NOTRUN (Chrome: FAIL, Safari: NOTRUN)
    • setSinkId() with the same AudioSinkOptions.type value should resolve immediately.: NOTRUN (Chrome: FAIL, Safari: NOTRUN)
    • setSinkId() should fail with TypeError on an invalid AudioSinkOptions.type value.: NOTRUN (Chrome: FAIL, Safari: NOTRUN)
    • setSinkId() should fail with NotFoundError on an invalid device identifier.: NOTRUN (Chrome: FAIL, Safari: NOTRUN)
    • setSinkId() should fail with InvalidStateError when calling from astopped AudioContext: NOTRUN (Chrome: FAIL, Safari: NOTRUN)
    • setSinkId() should fail with InvalidStateError when calling from adetached document: NOTRUN (Chrome: FAIL, Safari: NOTRUN)
Pushed by wptsync@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/6541a9504e61 [wpt PR 37244] - Validate execution context before creating setSinkIdResolver, a=testonly https://hg.mozilla.org/integration/autoland/rev/8bfced22f233 [wpt PR 37244] - Update wpt metadata, a=testonly
Status: NEW → RESOLVED
Closed: 2 years ago
Resolution: --- → FIXED
Target Milestone: --- → 109 Branch
You need to log in before you can comment on or make changes to this bug.