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

LibWeb: Clean up assumptions in Bindings::HostDefined

We don't have a 'root execution environment' anymore (thankfully), so
we can make sure that the ESO the HostDefined object holds onto is a
NonnullGCPtr.
This commit is contained in:
Andrew Kaster 2023-11-08 11:39:10 -07:00 committed by Andreas Kling
parent 427ca284f1
commit 4fcff01ef3
2 changed files with 3 additions and 4 deletions

View file

@ -16,7 +16,7 @@ void HostDefined::visit_edges(JS::Cell::Visitor& visitor)
{
JS::Realm::HostDefined::visit_edges(visitor);
visitor.visit(environment_settings_object);
visitor.visit(*intrinsics);
visitor.visit(intrinsics);
}
}

View file

@ -14,7 +14,7 @@
namespace Web::Bindings {
struct HostDefined : public JS::Realm::HostDefined {
HostDefined(JS::GCPtr<HTML::EnvironmentSettingsObject> eso, JS::NonnullGCPtr<Intrinsics> intrinsics)
HostDefined(JS::NonnullGCPtr<HTML::EnvironmentSettingsObject> eso, JS::NonnullGCPtr<Intrinsics> intrinsics)
: environment_settings_object(eso)
, intrinsics(intrinsics)
{
@ -22,8 +22,7 @@ struct HostDefined : public JS::Realm::HostDefined {
virtual ~HostDefined() override = default;
virtual void visit_edges(JS::Cell::Visitor& visitor) override;
// NOTE: Only the root execution environment in the main thread VM ever sets this to nullptr
JS::GCPtr<HTML::EnvironmentSettingsObject> environment_settings_object;
JS::NonnullGCPtr<HTML::EnvironmentSettingsObject> environment_settings_object;
JS::NonnullGCPtr<Intrinsics> intrinsics;
};