diff options
author | wolfbeast <mcwerewolf@gmail.com> | 2018-12-22 02:15:50 +0100 |
---|---|---|
committer | wolfbeast <mcwerewolf@gmail.com> | 2018-12-22 02:15:50 +0100 |
commit | c9d920e9c630fd8b99b863e034742fd3b38e12d3 (patch) | |
tree | a2f3f8a11aa10bca612c9648b9219abc89d73e5a /dom/base/DOMIntersectionObserver.h | |
parent | ba81aaf073bbf9b2e832324d1710faa4c61799ba (diff) | |
download | UXP-c9d920e9c630fd8b99b863e034742fd3b38e12d3.tar UXP-c9d920e9c630fd8b99b863e034742fd3b38e12d3.tar.gz UXP-c9d920e9c630fd8b99b863e034742fd3b38e12d3.tar.lz UXP-c9d920e9c630fd8b99b863e034742fd3b38e12d3.tar.xz UXP-c9d920e9c630fd8b99b863e034742fd3b38e12d3.zip |
Revise lifetime management of IntersectionObservers.
Tag #249
Diffstat (limited to 'dom/base/DOMIntersectionObserver.h')
-rw-r--r-- | dom/base/DOMIntersectionObserver.h | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/dom/base/DOMIntersectionObserver.h b/dom/base/DOMIntersectionObserver.h index 8144fc5c5..c290002ea 100644 --- a/dom/base/DOMIntersectionObserver.h +++ b/dom/base/DOMIntersectionObserver.h @@ -106,7 +106,10 @@ class DOMIntersectionObserver final : public nsISupports, public: DOMIntersectionObserver(already_AddRefed<nsPIDOMWindowInner>&& aOwner, mozilla::dom::IntersectionCallback& aCb) - : mOwner(aOwner), mCallback(&aCb), mConnected(false) + : mOwner(aOwner) + , mDocument(mOwner->GetExtantDoc()) + , mCallback(&aCb) + , mConnected(false) { } NS_DECL_CYCLE_COLLECTING_ISUPPORTS @@ -164,6 +167,7 @@ protected: double aIntersectionRatio); nsCOMPtr<nsPIDOMWindowInner> mOwner; + RefPtr<nsIDocument> mDocument; RefPtr<mozilla::dom::IntersectionCallback> mCallback; RefPtr<Element> mRoot; nsCSSRect mRootMargin; |