1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-25 04:07:44 +00:00

LibJS: Make Heap::allocate<T>() infallible

Stop worrying about tiny OOMs. Work towards #20449.

While going through these, I also changed the function signature in many
places where returning ThrowCompletionOr<T> is no longer necessary.
This commit is contained in:
Andreas Kling 2023-08-13 13:05:26 +02:00
parent 980e7164fe
commit 72c9f56c66
337 changed files with 1229 additions and 1251 deletions

View file

@ -45,12 +45,12 @@ WebIDL::ExceptionOr<Infrastructure::BodyWithType> extract_body(JS::Realm& realm,
else if (auto const* blob_handle = object.get_pointer<JS::Handle<FileAPI::Blob>>()) {
// FIXME: "set stream to the result of running objects get stream"
(void)blob_handle;
stream = MUST_OR_THROW_OOM(realm.heap().allocate<Streams::ReadableStream>(realm, realm));
stream = realm.heap().allocate<Streams::ReadableStream>(realm, realm);
}
// 4. Otherwise, set stream to a new ReadableStream object, and set up stream.
else {
// FIXME: "set up stream"
stream = MUST_OR_THROW_OOM(realm.heap().allocate<Streams::ReadableStream>(realm, realm));
stream = realm.heap().allocate<Streams::ReadableStream>(realm, realm);
}
// 5. Assert: stream is a ReadableStream object.