| Index: Source/core/dom/Document.cpp
|
| diff --git a/Source/core/dom/Document.cpp b/Source/core/dom/Document.cpp
|
| index 26b33075eb8218667929384816530a6a3338dc64..fc70d14a59351ddd55664b363a1ab122e26b7481 100644
|
| --- a/Source/core/dom/Document.cpp
|
| +++ b/Source/core/dom/Document.cpp
|
| @@ -367,6 +367,7 @@ Document::Document(const DocumentInit& initializer, DocumentClassFlags documentC
|
| , TreeScope(*this)
|
| , m_hasNodesWithPlaceholderStyle(false)
|
| , m_evaluateMediaQueriesOnStyleRecalc(false)
|
| + , m_shouldProcessFrameLifecycle(false)
|
| , m_pendingSheetLayout(NoLayoutWithPendingSheets)
|
| , m_frame(initializer.frame())
|
| , m_domWindow(m_frame ? m_frame->localDOMWindow() : 0)
|
| @@ -5086,6 +5087,19 @@ void Document::pluginLoadingTimerFired(Timer<Document>*)
|
| updateLayout();
|
| }
|
|
|
| +bool Document::shouldProcessFrameLifecycle()
|
| +{
|
| + if (m_shouldProcessFrameLifecycle)
|
| + return true;
|
| + if (!isRenderingReady())
|
| + return false;
|
| + if ((isHTMLDocument() || isXHTMLDocument()) && !body() && parsing())
|
| + return false;
|
| + // Once the page starts processing the pipeline we should never stop.
|
| + m_shouldProcessFrameLifecycle = true;
|
| + return true;
|
| +}
|
| +
|
| ScriptedAnimationController& Document::ensureScriptedAnimationController()
|
| {
|
| if (!m_scriptedAnimationController) {
|
|
|