mirror of
https://github.com/LadybirdBrowser/ladybird.git
synced 2025-07-05 16:41:52 +00:00
LibWeb/HTML: Unregister ESO during finalize phase
It is generally safer for GC cells to do cleanup work during the finalize phase.
This commit is contained in:
parent
3c0b125c1c
commit
00002c6443
Notes:
github-actions[bot]
2025-06-18 11:09:44 +00:00
Author: https://github.com/shannonbooth
Commit: 00002c6443
Pull-request: https://github.com/LadybirdBrowser/ladybird/pull/5129
Reviewed-by: https://github.com/gmta ✅
2 changed files with 3 additions and 2 deletions
|
@ -44,9 +44,10 @@ EnvironmentSettingsObject::EnvironmentSettingsObject(NonnullOwnPtr<JS::Execution
|
|||
responsible_event_loop().register_environment_settings_object({}, *this);
|
||||
}
|
||||
|
||||
EnvironmentSettingsObject::~EnvironmentSettingsObject()
|
||||
void EnvironmentSettingsObject::finalize()
|
||||
{
|
||||
responsible_event_loop().unregister_environment_settings_object({}, *this);
|
||||
Base::finalize();
|
||||
}
|
||||
|
||||
void EnvironmentSettingsObject::initialize(JS::Realm& realm)
|
||||
|
|
|
@ -76,7 +76,7 @@ struct EnvironmentSettingsObject : public Environment {
|
|||
GC_CELL(EnvironmentSettingsObject, Environment);
|
||||
|
||||
public:
|
||||
virtual ~EnvironmentSettingsObject() override;
|
||||
virtual void finalize() override;
|
||||
virtual void initialize(JS::Realm&) override;
|
||||
|
||||
// https://html.spec.whatwg.org/multipage/webappapis.html#concept-environment-target-browsing-context
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue