| Index: third_party/WebKit/Source/core/dom/Document.cpp
|
| diff --git a/third_party/WebKit/Source/core/dom/Document.cpp b/third_party/WebKit/Source/core/dom/Document.cpp
|
| index b0a7d6840732c2405363ac2f822c1367ee20aece..7581cf8ad284ef0156d49f6971a12a9830906f37 100644
|
| --- a/third_party/WebKit/Source/core/dom/Document.cpp
|
| +++ b/third_party/WebKit/Source/core/dom/Document.cpp
|
| @@ -83,6 +83,7 @@
|
| #include "core/dom/NodeChildRemovalTracker.h"
|
| #include "core/dom/NodeComputedStyle.h"
|
| #include "core/dom/NodeFilter.h"
|
| +#include "core/dom/NodeIntersectionObserverData.h"
|
| #include "core/dom/NodeIterator.h"
|
| #include "core/dom/NodeRareData.h"
|
| #include "core/dom/NodeTraversal.h"
|
| @@ -609,6 +610,9 @@ void Document::dispose()
|
| if (svgExtensions())
|
| accessSVGExtensions().pauseAnimations();
|
|
|
| + if (m_intersectionObserverData)
|
| + m_intersectionObserverData->dispose();
|
| +
|
| m_lifecycle.advanceTo(DocumentLifecycle::Disposed);
|
| DocumentLifecycleNotifier::notifyDocumentWasDisposed();
|
|
|
| @@ -5076,6 +5080,13 @@ IntersectionObserverController& Document::ensureIntersectionObserverController()
|
| return *m_intersectionObserverController;
|
| }
|
|
|
| +NodeIntersectionObserverData& Document::ensureIntersectionObserverData()
|
| +{
|
| + if (!m_intersectionObserverData)
|
| + m_intersectionObserverData = new NodeIntersectionObserverData();
|
| + return *m_intersectionObserverData;
|
| +}
|
| +
|
| void Document::reportBlockedScriptExecutionToInspector(const String& directiveText)
|
| {
|
| InspectorInstrumentation::scriptExecutionBlockedByCSP(this, directiveText);
|
|
|