mirror of
https://github.com/RGBCube/serenity
synced 2025-07-27 14:27:35 +00:00
LibWeb: Replace GlobalObject with Realm in wrapper functions
Similar to create() in LibJS, wrap() et al. are on a low enough level to warrant passing a Realm directly instead of relying on the current realm from the VM, as a wrapper may need to be allocated while no JS is being executed.
This commit is contained in:
parent
56b2ae5ac0
commit
40a70461a0
60 changed files with 261 additions and 235 deletions
|
@ -124,7 +124,7 @@ DOM::ExceptionOr<JS::Value> XMLHttpRequest::response()
|
|||
else if (m_response_type == Bindings::XMLHttpRequestResponseType::Blob) {
|
||||
auto blob_part = TRY_OR_RETURN_OOM(try_make_ref_counted<FileAPI::Blob>(m_received_bytes, get_final_mime_type().type()));
|
||||
auto blob = TRY(FileAPI::Blob::create(Vector<FileAPI::BlobPart> { move(blob_part) }));
|
||||
m_response_object = JS::make_handle(JS::Value(blob->create_wrapper(global_object)));
|
||||
m_response_object = JS::make_handle(JS::Value(blob->create_wrapper(realm)));
|
||||
}
|
||||
// 7. Otherwise, if this’s response type is "document", set a document response for this.
|
||||
else if (m_response_type == Bindings::XMLHttpRequestResponseType::Document) {
|
||||
|
@ -568,9 +568,9 @@ DOM::ExceptionOr<void> XMLHttpRequest::send(Optional<XMLHttpRequestBodyInit> bod
|
|||
return {};
|
||||
}
|
||||
|
||||
JS::Object* XMLHttpRequest::create_wrapper(JS::GlobalObject& global_object)
|
||||
JS::Object* XMLHttpRequest::create_wrapper(JS::Realm& realm)
|
||||
{
|
||||
return wrap(global_object, *this);
|
||||
return wrap(realm, *this);
|
||||
}
|
||||
|
||||
Bindings::CallbackType* XMLHttpRequest::onreadystatechange()
|
||||
|
|
|
@ -82,7 +82,7 @@ public:
|
|||
private:
|
||||
virtual void ref_event_target() override { ref(); }
|
||||
virtual void unref_event_target() override { unref(); }
|
||||
virtual JS::Object* create_wrapper(JS::GlobalObject&) override;
|
||||
virtual JS::Object* create_wrapper(JS::Realm&) override;
|
||||
|
||||
void set_ready_state(ReadyState);
|
||||
void set_status(Fetch::Infrastructure::Status status) { m_status = status; }
|
||||
|
|
|
@ -43,9 +43,9 @@ protected:
|
|||
}
|
||||
|
||||
private:
|
||||
virtual JS::Object* create_wrapper(JS::GlobalObject& global_object) override
|
||||
virtual JS::Object* create_wrapper(JS::Realm& realm) override
|
||||
{
|
||||
return wrap(global_object, *this);
|
||||
return wrap(realm, *this);
|
||||
}
|
||||
};
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue