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