Title: [122226] trunk
Revision
122226
Author
[email protected]
Date
2012-07-10 09:09:08 -0700 (Tue, 10 Jul 2012)

Log Message

REGRESSION (r122168): Layout Test http/tests/misc/script-defer.html is failing
https://bugs.webkit.org/show_bug.cgi?id=90845

Reviewed by Alexey Proskuryakov.

Source/WebCore:

I was a bit overzealous in removing bool returns. This one still makes sense.
This just reverts the wrong part of my previous change.

* html/parser/HTMLDocumentParser.cpp:
(WebCore::HTMLDocumentParser::attemptToRunDeferredScriptsAndEnd):
* html/parser/HTMLScriptRunner.cpp:
(WebCore::HTMLScriptRunner::executeScriptsWaitingForParsing):
* html/parser/HTMLScriptRunner.h:
(HTMLScriptRunner):

LayoutTests:

The test should no longer flake.

* platform/chromium/TestExpectations:
* platform/qt/Skipped:

Modified Paths

Diff

Modified: trunk/LayoutTests/ChangeLog (122225 => 122226)


--- trunk/LayoutTests/ChangeLog	2012-07-10 16:01:26 UTC (rev 122225)
+++ trunk/LayoutTests/ChangeLog	2012-07-10 16:09:08 UTC (rev 122226)
@@ -1,3 +1,15 @@
+2012-07-10  Eric Seidel  <[email protected]>
+
+        REGRESSION (r122168): Layout Test http/tests/misc/script-defer.html is failing
+        https://bugs.webkit.org/show_bug.cgi?id=90845
+
+        Reviewed by Alexey Proskuryakov.
+
+        The test should no longer flake.
+
+        * platform/chromium/TestExpectations:
+        * platform/qt/Skipped:
+
 2012-07-10  Leandro Gracia Gil  <[email protected]>
 
         WebSurroundingText layout tests should use the same code path as the rest of the feature.

Modified: trunk/LayoutTests/platform/chromium/TestExpectations (122225 => 122226)


--- trunk/LayoutTests/platform/chromium/TestExpectations	2012-07-10 16:01:26 UTC (rev 122225)
+++ trunk/LayoutTests/platform/chromium/TestExpectations	2012-07-10 16:09:08 UTC (rev 122226)
@@ -3741,6 +3741,3 @@
 
 BUGCR136441 : fast/canvas/webgl/glsl-conformance.html = TEXT
 BUGCR136441 : platform/chromium/virtual/gpu/fast/canvas/webgl/glsl-conformance.html = TEXT
-
-// Started failing after r122168.
-BUGWK90845 : http/tests/misc/script-defer.html = TEXT

Modified: trunk/LayoutTests/platform/qt/Skipped (122225 => 122226)


--- trunk/LayoutTests/platform/qt/Skipped	2012-07-10 16:01:26 UTC (rev 122225)
+++ trunk/LayoutTests/platform/qt/Skipped	2012-07-10 16:09:08 UTC (rev 122226)
@@ -973,9 +973,6 @@
 # https://bugs.webkit.org/show_bug.cgi?id=64002
 fast/selectors/unqualified-hover-strict.html
 
-# [Qt] http/tests/misc/script-defer.html is flakey
-# https://bugs.webkit.org/show_bug.cgi?id=90845
-http/tests/misc/script-defer.html
 
 # =========================================================================== #
 # failing media tests

Modified: trunk/Source/WebCore/ChangeLog (122225 => 122226)


--- trunk/Source/WebCore/ChangeLog	2012-07-10 16:01:26 UTC (rev 122225)
+++ trunk/Source/WebCore/ChangeLog	2012-07-10 16:09:08 UTC (rev 122226)
@@ -1,3 +1,20 @@
+2012-07-10  Eric Seidel  <[email protected]>
+
+        REGRESSION (r122168): Layout Test http/tests/misc/script-defer.html is failing
+        https://bugs.webkit.org/show_bug.cgi?id=90845
+
+        Reviewed by Alexey Proskuryakov.
+
+        I was a bit overzealous in removing bool returns. This one still makes sense.
+        This just reverts the wrong part of my previous change.
+
+        * html/parser/HTMLDocumentParser.cpp:
+        (WebCore::HTMLDocumentParser::attemptToRunDeferredScriptsAndEnd):
+        * html/parser/HTMLScriptRunner.cpp:
+        (WebCore::HTMLScriptRunner::executeScriptsWaitingForParsing):
+        * html/parser/HTMLScriptRunner.h:
+        (HTMLScriptRunner):
+
 2012-07-10  Kevin Ellis  <[email protected]>
 
         Input type=range issue with events not being raised when value set in js

Modified: trunk/Source/WebCore/html/parser/HTMLDocumentParser.cpp (122225 => 122226)


--- trunk/Source/WebCore/html/parser/HTMLDocumentParser.cpp	2012-07-10 16:01:26 UTC (rev 122225)
+++ trunk/Source/WebCore/html/parser/HTMLDocumentParser.cpp	2012-07-10 16:09:08 UTC (rev 122226)
@@ -380,11 +380,8 @@
 {
     ASSERT(isStopping());
     ASSERT(!hasInsertionPoint());
-    if (m_scriptRunner) {
-        m_scriptRunner->executeScriptsWaitingForParsing();
-        if (isWaitingForScripts())
-            return;
-    }
+    if (m_scriptRunner && !m_scriptRunner->executeScriptsWaitingForParsing())
+        return;
     end();
 }
 

Modified: trunk/Source/WebCore/html/parser/HTMLScriptRunner.cpp (122225 => 122226)


--- trunk/Source/WebCore/html/parser/HTMLScriptRunner.cpp	2012-07-10 16:01:26 UTC (rev 122225)
+++ trunk/Source/WebCore/html/parser/HTMLScriptRunner.cpp	2012-07-10 16:09:08 UTC (rev 122226)
@@ -210,7 +210,7 @@
     executeParsingBlockingScripts();
 }
 
-void HTMLScriptRunner::executeScriptsWaitingForParsing()
+bool HTMLScriptRunner::executeScriptsWaitingForParsing()
 {
     while (!m_scriptsToExecuteAfterParsing.isEmpty()) {
         ASSERT(!m_scriptNestingLevel);
@@ -218,14 +218,15 @@
         ASSERT(m_scriptsToExecuteAfterParsing.first().cachedScript());
         if (!m_scriptsToExecuteAfterParsing.first().cachedScript()->isLoaded()) {
             watchForLoad(m_scriptsToExecuteAfterParsing.first());
-            return;
+            return false;
         }
         PendingScript first = m_scriptsToExecuteAfterParsing.takeFirst();
         executePendingScriptAndDispatchEvent(first);
         // FIXME: What is this m_document check for?
         if (!m_document)
-            return;
+            return false;
     }
+    return true;
 }
 
 void HTMLScriptRunner::requestParsingBlockingScript(Element* element)

Modified: trunk/Source/WebCore/html/parser/HTMLScriptRunner.h (122225 => 122226)


--- trunk/Source/WebCore/html/parser/HTMLScriptRunner.h	2012-07-10 16:01:26 UTC (rev 122225)
+++ trunk/Source/WebCore/html/parser/HTMLScriptRunner.h	2012-07-10 16:09:08 UTC (rev 122226)
@@ -58,7 +58,7 @@
     void executeScriptsWaitingForLoad(CachedResource*);
     bool hasScriptsWaitingForStylesheets() const { return m_hasScriptsWaitingForStylesheets; }
     void executeScriptsWaitingForStylesheets();
-    void executeScriptsWaitingForParsing();
+    bool executeScriptsWaitingForParsing();
 
     bool hasParserBlockingScript() const;
     bool isExecutingScript() const { return !!m_scriptNestingLevel; }
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to