mirror of
https://github.com/RGBCube/serenity
synced 2025-07-25 05:57:44 +00:00
LibWeb: Make CSSStyleSheet::m_owner_css_rule a WeakPtr
It's not safe for this to be a raw pointer, as the imported style sheet can outlive the rule.
This commit is contained in:
parent
f47c658275
commit
e8b85b13e2
2 changed files with 4 additions and 3 deletions
|
@ -8,6 +8,7 @@
|
||||||
|
|
||||||
#include <AK/RefCounted.h>
|
#include <AK/RefCounted.h>
|
||||||
#include <AK/String.h>
|
#include <AK/String.h>
|
||||||
|
#include <AK/Weakable.h>
|
||||||
#include <LibWeb/Bindings/Wrappable.h>
|
#include <LibWeb/Bindings/Wrappable.h>
|
||||||
#include <LibWeb/CSS/CSSStyleDeclaration.h>
|
#include <LibWeb/CSS/CSSStyleDeclaration.h>
|
||||||
#include <LibWeb/CSS/Selector.h>
|
#include <LibWeb/CSS/Selector.h>
|
||||||
|
@ -16,7 +17,8 @@ namespace Web::CSS {
|
||||||
|
|
||||||
class CSSRule
|
class CSSRule
|
||||||
: public RefCounted<CSSRule>
|
: public RefCounted<CSSRule>
|
||||||
, public Bindings::Wrappable {
|
, public Bindings::Wrappable
|
||||||
|
, public Weakable<CSSRule> {
|
||||||
public:
|
public:
|
||||||
using WrapperType = Bindings::CSSRuleWrapper;
|
using WrapperType = Bindings::CSSRuleWrapper;
|
||||||
|
|
||||||
|
|
|
@ -52,8 +52,7 @@ private:
|
||||||
|
|
||||||
NonnullRefPtr<CSSRuleList> m_rules;
|
NonnullRefPtr<CSSRuleList> m_rules;
|
||||||
|
|
||||||
// FIXME: Use WeakPtr.
|
WeakPtr<CSSRule> m_owner_css_rule;
|
||||||
CSSRule* m_owner_css_rule { nullptr };
|
|
||||||
};
|
};
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue