summaryrefslogtreecommitdiffstats
path: root/dom/base/DOMIntersectionObserver.h
diff options
context:
space:
mode:
authorwolfbeast <mcwerewolf@gmail.com>2018-12-22 02:15:50 +0100
committerwolfbeast <mcwerewolf@gmail.com>2018-12-22 02:15:50 +0100
commitc9d920e9c630fd8b99b863e034742fd3b38e12d3 (patch)
treea2f3f8a11aa10bca612c9648b9219abc89d73e5a /dom/base/DOMIntersectionObserver.h
parentba81aaf073bbf9b2e832324d1710faa4c61799ba (diff)
downloadUXP-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.h6
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;