mirror of
https://github.com/RGBCube/serenity
synced 2025-07-24 23:27:42 +00:00
LibWeb/Streams: Fix inconsistent uses of realm() and vm()
This is not documented yet, but the preferred style is getting both upfront instead of inlining various kinds of calls in places that use the realm and vm.
This commit is contained in:
parent
0a556ae26d
commit
742f6f7e26
3 changed files with 20 additions and 10 deletions
|
@ -302,14 +302,16 @@ WebIDL::ExceptionOr<void> readable_stream_reader_generic_release(ReadableStreamG
|
|||
// 3. Assert: stream.[[reader]] is reader.
|
||||
VERIFY(stream->reader().ptr() == &reader);
|
||||
|
||||
auto& realm = stream->realm();
|
||||
|
||||
// 4. If stream.[[state]] is "readable", reject reader.[[closedPromise]] with a TypeError exception.
|
||||
auto exception = TRY(JS::TypeError::create(stream->realm(), "Released readable stream"sv));
|
||||
auto exception = TRY(JS::TypeError::create(realm, "Released readable stream"sv));
|
||||
if (stream->is_readable()) {
|
||||
WebIDL::reject_promise(stream->realm(), *reader.closed_promise_capability(), exception);
|
||||
WebIDL::reject_promise(realm, *reader.closed_promise_capability(), exception);
|
||||
}
|
||||
// 5. Otherwise, set reader.[[closedPromise]] to a promise rejected with a TypeError exception.
|
||||
else {
|
||||
reader.set_closed_promise_capability(WebIDL::create_rejected_promise(stream->realm(), exception));
|
||||
reader.set_closed_promise_capability(WebIDL::create_rejected_promise(realm, exception));
|
||||
}
|
||||
|
||||
// 6. Set reader.[[closedPromise]].[[PromiseIsHandled]] to true.
|
||||
|
@ -374,11 +376,13 @@ void readable_stream_default_reader_read(ReadableStreamDefaultReader& reader, Re
|
|||
// https://streams.spec.whatwg.org/#abstract-opdef-readablestreamdefaultreaderrelease
|
||||
WebIDL::ExceptionOr<void> readable_stream_default_reader_release(ReadableStreamDefaultReader& reader)
|
||||
{
|
||||
auto& realm = reader.realm();
|
||||
|
||||
// 1. Perform ! ReadableStreamReaderGenericRelease(reader).
|
||||
TRY(readable_stream_reader_generic_release(reader));
|
||||
|
||||
// 2. Let e be a new TypeError exception.
|
||||
auto e = TRY(JS::TypeError::create(reader.realm(), "Reader has been released"sv));
|
||||
auto e = TRY(JS::TypeError::create(realm, "Reader has been released"sv));
|
||||
|
||||
// 3. Perform ! ReadableStreamDefaultReaderErrorReadRequests(reader, e).
|
||||
readable_stream_default_reader_error_read_requests(reader, e);
|
||||
|
@ -1437,6 +1441,8 @@ Optional<double> writable_stream_default_writer_get_desired_size(WritableStreamD
|
|||
// https://streams.spec.whatwg.org/#writable-stream-default-writer-release
|
||||
WebIDL::ExceptionOr<void> writable_stream_default_writer_release(WritableStreamDefaultWriter& writer)
|
||||
{
|
||||
auto& realm = writer.realm();
|
||||
|
||||
// 1. Let stream be writer.[[stream]].
|
||||
auto stream = writer.stream();
|
||||
|
||||
|
@ -1447,7 +1453,7 @@ WebIDL::ExceptionOr<void> writable_stream_default_writer_release(WritableStreamD
|
|||
VERIFY(stream->writer().ptr() == &writer);
|
||||
|
||||
// 4. Let releasedError be a new TypeError.
|
||||
auto released_error = MUST_OR_THROW_OOM(JS::TypeError::create(writer.realm(), "Writer's stream lock has been released"sv));
|
||||
auto released_error = MUST_OR_THROW_OOM(JS::TypeError::create(realm, "Writer's stream lock has been released"sv));
|
||||
|
||||
// 5. Perform ! WritableStreamDefaultWriterEnsureReadyPromiseRejected(writer, releasedError).
|
||||
writable_stream_default_writer_ensure_ready_promise_rejected(writer, released_error);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue