Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(277)

Unified Diff: third_party/WebKit/Source/core/dom/Document.cpp

Issue 2366253002: Remove ActiveDOMObject::stop() (Closed)
Patch Set: temp Created 4 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
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 edecda6ba994935a308e864a4b511d98288d9a2b..87eef36ddb6e0656f5ff6041af12da6dabefc35a 100644
--- a/third_party/WebKit/Source/core/dom/Document.cpp
+++ b/third_party/WebKit/Source/core/dom/Document.cpp
@@ -2282,6 +2282,7 @@ void Document::shutdown() {
// Don't allow script to run in the middle of detachLayoutTree() because a
// detaching Document is not in a consistent state.
ScriptForbiddenScope forbidScript;
+
view()->dispose();
m_markers->prepareForDestruction();
@@ -2297,8 +2298,6 @@ void Document::shutdown() {
->sharedWorkerRepositoryClient()
->documentDetached(this);
- stopActiveDOMObjects();
-
// FIXME: consider using ActiveDOMObject.
if (m_scriptedAnimationController)
m_scriptedAnimationController->clearDocumentPointer();
@@ -2384,7 +2383,9 @@ void Document::shutdown() {
m_lifecycle.advanceTo(DocumentLifecycle::Stopped);
- // FIXME: Currently we call notifyContextDestroyed() only in
+ // TODO(haraken): Call contextDestroyed() before we start any disruptive
+ // operations.
+ // TODO(haraken): Currently we call notifyContextDestroyed() only in
// Document::detachLayoutTree(), which means that we don't call
// notifyContextDestroyed() for a document that doesn't get detached.
// If such a document has any observer, the observer won't get
@@ -2392,11 +2393,11 @@ void Document::shutdown() {
// created by DOMImplementation::createDocument().
ExecutionContext::notifyContextDestroyed();
- // This is required, as our LocalFrame might delete itself as soon as it
- // detaches us. However, this violates Node::detachLayoutTree() semantics, as
- // it's never possible to re-attach. Eventually Document::detachLayoutTree()
- // should be renamed, or this setting of the frame to 0 could be made explicit
- // in each of the callers of Document::detachLayoutTree().
+ // This is required, as our LocalFrame might delete itself as soon as it detaches
+ // us. However, this violates Node::detachLayoutTree() semantics, as it's never
+ // possible to re-attach. Eventually Document::detachLayoutTree() should be renamed,
+ // or this setting of the frame to 0 could be made explicit in each of the
+ // callers of Document::detachLayoutTree().
m_frame = nullptr;
}

Powered by Google App Engine
This is Rietveld 408576698