Don't use the threaded HTML parser for javascript: URLs
https://bugs.webkit.org/show_bug.cgi?id=107975

Reviewed by Adam Barth.

Several layout tests depend on javascript: URL iframes loading synchronously including fast/loader/javascript-url-encoding.html.
This patch avoids using the threaded parser for those URLs so they will continue to be synchronous.

No new tests because covered by existing tests.

* html/parser/HTMLParserOptions.cpp:
(WebCore::HTMLParserOptions::HTMLParserOptions):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@140986 268f45cc-cd09-0410-ab3c-d52691b4dbfc
diff --git a/Source/WebCore/ChangeLog b/Source/WebCore/ChangeLog
index d6f7de7..9961298 100644
--- a/Source/WebCore/ChangeLog
+++ b/Source/WebCore/ChangeLog
@@ -1,3 +1,18 @@
+2013-01-28  Tony Gentilcore  <tonyg@chromium.org>
+
+        Don't use the threaded HTML parser for javascript: URLs
+        https://bugs.webkit.org/show_bug.cgi?id=107975
+
+        Reviewed by Adam Barth.
+
+        Several layout tests depend on javascript: URL iframes loading synchronously including fast/loader/javascript-url-encoding.html.
+        This patch avoids using the threaded parser for those URLs so they will continue to be synchronous.
+
+        No new tests because covered by existing tests.
+
+        * html/parser/HTMLParserOptions.cpp:
+        (WebCore::HTMLParserOptions::HTMLParserOptions):
+
 2013-01-27  Sam Weinig  <sam@webkit.org>
 
         SVGPathStringSource should not up-convert 8-bit strings to UTF-16
diff --git a/Source/WebCore/html/parser/HTMLParserOptions.cpp b/Source/WebCore/html/parser/HTMLParserOptions.cpp
index 2552758..32a464a 100644
--- a/Source/WebCore/html/parser/HTMLParserOptions.cpp
+++ b/Source/WebCore/html/parser/HTMLParserOptions.cpp
@@ -41,7 +41,7 @@
     Settings* settings = document ? document->settings() : 0;
     usePreHTML5ParserQuirks = settings && settings->usePreHTML5ParserQuirks();
 #if ENABLE(THREADED_HTML_PARSER)
-    useThreading = settings && settings->threadedHTMLParser();
+    useThreading = settings && settings->threadedHTMLParser() && !document->url().isBlankURL();
 #else
     useThreading = false;
 #endif