[SCM] WebKit Debian packaging branch, debian/experimental, updated. upstream/1.3.3-9427-gc2be6fc

darin at apple.com darin at apple.com
Wed Dec 22 13:59:38 UTC 2010


The following commit has been merged in the debian/experimental branch:
commit 7b7981bbbfe776125bb802acdce42441fb452c25
Author: darin at apple.com <darin at apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date:   Fri Oct 1 00:04:02 2010 +0000

    2010-09-30  Darin Adler  <darin at apple.com>
    
            Reviewed by Sam Weinig.
    
            Remove remaining calls to deprecatedParseURL
            https://bugs.webkit.org/show_bug.cgi?id=26599
    
            * WebCoreSupport/WebFrameLoaderClient.cpp:
            (WebFrameLoaderClient::dispatchDidFailToStartPlugin):
            Call stripLeadingAndTrailingHTMLSpaces instead of deprecatedParseURL.
    2010-09-30  Darin Adler  <darin at apple.com>
    
            Reviewed by Sam Weinig.
    
            Remove remaining calls to deprecatedParseURL
            https://bugs.webkit.org/show_bug.cgi?id=26599
    
            * DOM/WebDOMOperations.mm:
            (-[DOMDocument URLWithAttributeString:]):
            * WebCoreSupport/WebFrameLoaderClient.mm:
            (WebFrameLoaderClient::createPlugin):
            Call stripLeadingAndTrailingHTMLSpaces instead of deprecatedParseURL.
    2010-09-30  Darin Adler  <darin at apple.com>
    
            Reviewed by Sam Weinig.
    
            Remove remaining calls to deprecatedParseURL
            https://bugs.webkit.org/show_bug.cgi?id=26599
    
            Test: fast/replaced/object-param-spaces.html
    
            * css/CSSHelper.cpp: Removed.
            * css/CSSHelper.h: Removed deprecatedParseURL.
    
            * html/parser/HTMLParserIdioms.cpp:
            (WebCore::stripLeadingAndTrailingHTMLSpaces):
            Fixed bug where the function would turn the null string into the empty string.
            Fixed bug where the function would not strip all trailing spaces.
    
            * html/parser/CSSPreloadScanner.cpp:
            (WebCore::CSSPreloadScanner::CSSPreloadScanner): Initialize m_state
            instead of calling the reset function.
            (WebCore::CSSPreloadScanner::scan): Tweaked coding style.
            (WebCore::CSSPreloadScanner::tokenize): Use isHTMLSpace instead of
            an identical local function named isWhitespace.
            (WebCore::parseCSSStringOrURL): Added. This function does what
            deprecatedParseURL did before, and this is the only place in WebKit
            that needs it. The code implements the rules for a string or URL
            token. The real CSS parser does this with flex and the code to hook
            flex up to yacc, so the function is not needed there.
            (WebCore::CSSPreloadScanner::emitRule): Streamlined the code a bit
            and mae it call parseCSSStringOrURL.
    
            * bindings/generic/BindingSecurity.h:
            (WebCore::::allowSettingFrameSrcToJavascriptUrl):
            * bindings/js/JSDOMBinding.cpp:
            (WebCore::allowSettingSrcToJavascriptURL):
            * bindings/js/JSHTMLFrameElementCustom.cpp:
            (WebCore::allowSettingJavascriptURL):
            * bindings/objc/DOM.mm:
            (-[DOMElement _getURLAttribute:]):
            * bindings/objc/DOMHTML.mm:
            (-[DOMHTMLDocument _createDocumentFragmentWithMarkupString:baseURLString:]):
            * dom/Document.cpp:
            (WebCore::Document::processBaseElement):
            * dom/Element.cpp:
            (WebCore::isAttributeToRemove):
            (WebCore::Element::getURLAttribute):
            (WebCore::Element::getNonEmptyURLAttribute):
            * html/HTMLAnchorElement.cpp:
            (WebCore::HTMLAnchorElement::defaultEventHandler):
            (WebCore::HTMLAnchorElement::parseMappedAttribute):
            (WebCore::HTMLAnchorElement::href):
            * html/HTMLBodyElement.cpp:
            (WebCore::HTMLBodyElement::parseMappedAttribute):
            * html/HTMLEmbedElement.cpp:
            (WebCore::HTMLEmbedElement::parseMappedAttribute):
            * html/HTMLFrameElementBase.cpp:
            (WebCore::HTMLFrameElementBase::parseMappedAttribute):
            * html/HTMLImageElement.cpp:
            (WebCore::HTMLImageElement::parseMappedAttribute):
            * html/HTMLImageLoader.cpp:
            (WebCore::HTMLImageLoader::sourceURI):
            * html/HTMLLinkElement.cpp:
            (WebCore::HTMLLinkElement::parseMappedAttribute):
            * html/HTMLMediaElement.cpp:
            * html/HTMLObjectElement.cpp:
            (WebCore::HTMLObjectElement::parseMappedAttribute):
            (WebCore::HTMLObjectElement::parametersForPlugin):
            * html/HTMLTableElement.cpp:
            (WebCore::HTMLTableElement::parseMappedAttribute):
            * html/HTMLTablePartElement.cpp:
            (WebCore::HTMLTablePartElement::parseMappedAttribute):
            * html/parser/HTMLPreloadScanner.cpp:
            (WebCore::HTMLNames::PreloadTask::setUrlToLoad):
            * loader/FormSubmission.cpp:
            (WebCore::FormSubmission::Attributes::parseAction):
            * platform/chromium/ClipboardChromium.cpp:
            (WebCore::ClipboardChromium::declareAndWriteDragImage):
            * platform/chromium/PasteboardChromium.cpp:
            (WebCore::Pasteboard::writeImage):
            * platform/qt/ClipboardQt.cpp:
            (WebCore::ClipboardQt::declareAndWriteDragImage):
            * platform/win/ClipboardWin.cpp:
            (WebCore::ClipboardWin::declareAndWriteDragImage):
            * rendering/HitTestResult.cpp:
            (WebCore::HitTestResult::absoluteImageURL):
            (WebCore::HitTestResult::absoluteMediaURL):
            (WebCore::HitTestResult::absoluteLinkURL):
            * svg/SVGAElement.cpp:
            (WebCore::SVGAElement::defaultEventHandler):
            * svg/SVGImageLoader.cpp:
            (WebCore::SVGImageLoader::sourceURI):
            * wml/WMLAElement.cpp:
            (WebCore::WMLAElement::defaultEventHandler):
            * wml/WMLImageLoader.cpp:
            (WebCore::WMLImageLoader::sourceURI):
            Call stripLeadingAndTrailingHTMLSpaces instead of deprecatedParseURL.
    
            * WebCore.exp.in: Updated.
    
            * Android.mk: Removed CSSHelper.cpp.
            * CMakeLists.txt: Ditto.
            * GNUmakefile.am: Ditto.
            * WebCore.gypi: Ditto.
            * WebCore.pro: Ditto.
            * WebCore.vcproj/WebCore.vcproj: Ditto.
            * WebCore.xcodeproj/project.pbxproj: Ditto.
    
            * bindings/js/JSAttrCustom.cpp:
            * bindings/js/JSElementCustom.cpp:
            * bindings/v8/custom/V8ElementCustom.cpp:
            * bindings/v8/custom/V8LocationCustom.cpp:
            * css/CSSParser.cpp:
            * html/HTMLMediaElement.cpp:
            * html/HTMLVideoElement.cpp:
            * loader/ImageLoader.cpp:
            * rendering/style/RenderStyle.h:
            Removed unneeded include of CSSHelper.h.
    2010-09-30  Darin Adler  <darin at apple.com>
    
            Reviewed by Sam Weinig.
    
            Remove remaining calls to deprecatedParseURL
            https://bugs.webkit.org/show_bug.cgi?id=26599
    
            * fast/replaced/object-param-spaces-expected.txt: Copied from
            LayoutTests/fast/replaced/object-param-url-control-char-expected.txt.
            * fast/replaced/object-param-spaces.html: Copied from
            LayoutTests/fast/replaced/object-param-url-control-char.html.
            * fast/replaced/object-param-url-control-char-expected.txt: Removed.
            * fast/replaced/object-param-url-control-char.html: Removed.
            Changed this test to expect HTML standard space trimming, but not the WebKit-only
            control character stripping we had historically.
    
            * fast/url/query-expected.txt: Updated to expect the test to pass.
    
            * fast/url/script-tests/segments-from-data-url.js: Changed expected result to not
            expect stripping of newline characters.
            * fast/url/script-tests/segments.js: Ditto.
            * fast/url/segments-expected.txt: Updated results.
            * fast/url/segments-from-data-url-expected.txt: Ditto.
    
            * http/tests/security/javascriptURL/javascriptURL-execution-context-frame-location-htmldom-expected.txt:
            * http/tests/security/javascriptURL/javascriptURL-execution-context-frame-src-getAttribute-value-expected.txt:
            * http/tests/security/javascriptURL/javascriptURL-execution-context-frame-src-htmldom-expected.txt:
            * http/tests/security/javascriptURL/javascriptURL-execution-context-frame-src-setAttribute-expected.txt:
            * http/tests/security/javascriptURL/javascriptURL-execution-context-frame-src-setAttributeNS-expected.txt:
            * http/tests/security/javascriptURL/javascriptURL-execution-context-frame-src-setAttributeNode-expected.txt:
            * http/tests/security/javascriptURL/javascriptURL-execution-context-frame-src-setAttributeNodeNS-expected.txt:
            * http/tests/security/javascriptURL/javascriptURL-execution-context-iframe-src-getAttribute-value-expected.txt:
            * http/tests/security/javascriptURL/javascriptURL-execution-context-iframe-src-htmldom-expected.txt:
            * http/tests/security/javascriptURL/javascriptURL-execution-context-iframe-src-setAttribute-expected.txt:
            * http/tests/security/javascriptURL/javascriptURL-execution-context-iframe-src-setAttributeNS-expected.txt:
            * http/tests/security/javascriptURL/javascriptURL-execution-context-iframe-src-setAttributeNode-expected.txt:
            * http/tests/security/javascriptURL/javascriptURL-execution-context-iframe-src-setAttributeNodeNS-expected.txt:
            These tests had multiple test cases with embedded control characters. These URLs no
            longer qualify as javascript URLs, so there are no longer any unsafe JavaScript log
            messages for them. The test cases themselves need not be changed at this time.
    
            * http/tests/security/xssAuditor/embed-tag-control-char-expected.txt:
            * http/tests/security/xssAuditor/object-embed-tag-control-char-expected.txt:
            Updated expected results to reflect the fact that the control character is no longer
            stripped from the URL in these cases. The test is still valid, but these are not as
            interesting test cases any more since control characters do not have special handling.
    
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@68854 268f45cc-cd09-0410-ab3c-d52691b4dbfc

diff --git a/LayoutTests/ChangeLog b/LayoutTests/ChangeLog
index 7e8ac7d..0d1d032 100644
--- a/LayoutTests/ChangeLog
+++ b/LayoutTests/ChangeLog
@@ -1,3 +1,50 @@
+2010-09-30  Darin Adler  <darin at apple.com>
+
+        Reviewed by Sam Weinig.
+
+        Remove remaining calls to deprecatedParseURL
+        https://bugs.webkit.org/show_bug.cgi?id=26599
+
+        * fast/replaced/object-param-spaces-expected.txt: Copied from
+        LayoutTests/fast/replaced/object-param-url-control-char-expected.txt.
+        * fast/replaced/object-param-spaces.html: Copied from
+        LayoutTests/fast/replaced/object-param-url-control-char.html.
+        * fast/replaced/object-param-url-control-char-expected.txt: Removed.
+        * fast/replaced/object-param-url-control-char.html: Removed.
+        Changed this test to expect HTML standard space trimming, but not the WebKit-only
+        control character stripping we had historically.
+
+        * fast/url/query-expected.txt: Updated to expect the test to pass.
+
+        * fast/url/script-tests/segments-from-data-url.js: Changed expected result to not
+        expect stripping of newline characters.
+        * fast/url/script-tests/segments.js: Ditto.
+        * fast/url/segments-expected.txt: Updated results.
+        * fast/url/segments-from-data-url-expected.txt: Ditto.
+
+        * http/tests/security/javascriptURL/javascriptURL-execution-context-frame-location-htmldom-expected.txt:
+        * http/tests/security/javascriptURL/javascriptURL-execution-context-frame-src-getAttribute-value-expected.txt:
+        * http/tests/security/javascriptURL/javascriptURL-execution-context-frame-src-htmldom-expected.txt:
+        * http/tests/security/javascriptURL/javascriptURL-execution-context-frame-src-setAttribute-expected.txt:
+        * http/tests/security/javascriptURL/javascriptURL-execution-context-frame-src-setAttributeNS-expected.txt:
+        * http/tests/security/javascriptURL/javascriptURL-execution-context-frame-src-setAttributeNode-expected.txt:
+        * http/tests/security/javascriptURL/javascriptURL-execution-context-frame-src-setAttributeNodeNS-expected.txt:
+        * http/tests/security/javascriptURL/javascriptURL-execution-context-iframe-src-getAttribute-value-expected.txt:
+        * http/tests/security/javascriptURL/javascriptURL-execution-context-iframe-src-htmldom-expected.txt:
+        * http/tests/security/javascriptURL/javascriptURL-execution-context-iframe-src-setAttribute-expected.txt:
+        * http/tests/security/javascriptURL/javascriptURL-execution-context-iframe-src-setAttributeNS-expected.txt:
+        * http/tests/security/javascriptURL/javascriptURL-execution-context-iframe-src-setAttributeNode-expected.txt:
+        * http/tests/security/javascriptURL/javascriptURL-execution-context-iframe-src-setAttributeNodeNS-expected.txt:
+        These tests had multiple test cases with embedded control characters. These URLs no
+        longer qualify as javascript URLs, so there are no longer any unsafe JavaScript log
+        messages for them. The test cases themselves need not be changed at this time.
+
+        * http/tests/security/xssAuditor/embed-tag-control-char-expected.txt:
+        * http/tests/security/xssAuditor/object-embed-tag-control-char-expected.txt:
+        Updated expected results to reflect the fact that the control character is no longer
+        stripped from the URL in these cases. The test is still valid, but these are not as
+        interesting test cases any more since control characters do not have special handling.
+
 2010-09-30  Martin Robinson  <mrobinson at igalia.com>
 
         Unskip some tests that are passing and rebaseline a couple others.
diff --git a/LayoutTests/fast/replaced/object-param-spaces-expected.txt b/LayoutTests/fast/replaced/object-param-spaces-expected.txt
new file mode 100644
index 0000000..e283a88
--- /dev/null
+++ b/LayoutTests/fast/replaced/object-param-spaces-expected.txt
@@ -0,0 +1,4 @@
+
+This test verifies that a URL specified in a <param> of an <object> is parsed the same as if it was specified as the data attribute of the <object>. Specifically, this verifies that leading/trailing whitespace are stripped.
+
+PASS
diff --git a/LayoutTests/fast/replaced/object-param-spaces.html b/LayoutTests/fast/replaced/object-param-spaces.html
new file mode 100644
index 0000000..1a6503a
--- /dev/null
+++ b/LayoutTests/fast/replaced/object-param-spaces.html
@@ -0,0 +1,30 @@
+<html>
+    <head>
+        <script>
+            if (window.layoutTestController) {
+                layoutTestController.dumpAsText();
+                layoutTestController.waitUntilDone();
+            }
+            document.addEventListener("beforeload", function(event) {
+                var console = document.getElementById("console");
+
+                if (event.url == "scheme://url-with-leading-and-trailing-space/")
+                    console.innerHTML = "PASS";
+                else
+                    console.innerHTML = "FAIL";
+
+                event.preventDefault();
+ 
+                if (window.layoutTestController)
+                    layoutTestController.notifyDone();
+            }, true);
+        </script>
+    </head>
+    <body>
+        <object width="0" height="0" type="application/x-webkit-test-netscape">
+            <param name="movie" value="  scheme://url-with-leading-and-trailing-space/     ">
+        </object>
+        <p>This test verifies that a URL specified in a &lt;param&gt; of an &lt;object&gt; is parsed the same as if it was specified as the data attribute of the &lt;object&gt;. Specifically, this verifies that leading/trailing whitespace are stripped.</p>
+        <div id="console"></div>
+    </body>
+</html>
diff --git a/LayoutTests/fast/replaced/object-param-url-control-char-expected.txt b/LayoutTests/fast/replaced/object-param-url-control-char-expected.txt
deleted file mode 100644
index 775aa69..0000000
--- a/LayoutTests/fast/replaced/object-param-url-control-char-expected.txt
+++ /dev/null
@@ -1,4 +0,0 @@
-
-This test verifies that a URL specified in a <param> of an <object> is parsed the same as if it was specified as the data attribute of the <object>. Specifically, this verifies that control characters and leading/trailing whitespace are stripped, and that a resource surrounded with url('') is understood.
-
-PASS
diff --git a/LayoutTests/fast/replaced/object-param-url-control-char.html b/LayoutTests/fast/replaced/object-param-url-control-char.html
deleted file mode 100644
index 9fb4b40..0000000
--- a/LayoutTests/fast/replaced/object-param-url-control-char.html
+++ /dev/null
@@ -1,30 +0,0 @@
-<html>
-    <head>
-        <script>
-            if (window.layoutTestController) {
-                layoutTestController.dumpAsText();
-                layoutTestController.waitUntilDone();
-            }
-            document.addEventListener("beforeload", function(event) {
-                var console = document.getElementById("console");
-
-                if (event.url == "scheme://url-with-control-char/")
-                    console.innerHTML = "PASS";
-                else
-                    console.innerHTML = "FAIL";
-
-                event.preventDefault();
- 
-                if (window.layoutTestController)
-                    layoutTestController.notifyDone();
-            }, true);
-        </script>
-    </head>
-    <body>
-        <object width="0" height="0" type="application/x-webkit-test-netscape">
-            <param name="movie" value=" 
  uRl('scheme://url-with-control-char/') 
 ">
-        </object>
-        <p>This test verifies that a URL specified in a &lt;param&gt; of an &lt;object&gt; is parsed the same as if it was specified as the data attribute of the &lt;object&gt;. Specifically, this verifies that control characters and leading/trailing whitespace are stripped, and that a resource surrounded with url('') is understood.</p>
-        <div id="console"></div>
-    </body>
-</html>
diff --git a/LayoutTests/fast/url/query-expected.txt b/LayoutTests/fast/url/query-expected.txt
index 9941416..e4816a5 100644
--- a/LayoutTests/fast/url/query-expected.txt
+++ b/LayoutTests/fast/url/query-expected.txt
@@ -5,7 +5,7 @@ On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE
 
 PASS canonicalize('http://www.example.com/?foo=bar') is 'http://www.example.com/?foo=bar'
 PASS canonicalize('http://www.example.com/?as?df') is 'http://www.example.com/?as?df'
-FAIL canonicalize('http://www.example.com/?\x02hello bye') should be http://www.example.com/?%02hello%7F%20bye. Was http://www.example.com/?hello%7F%20bye.
+PASS canonicalize('http://www.example.com/?\x02hello bye') is 'http://www.example.com/?%02hello%7F%20bye'
 PASS canonicalize('http://www.example.com/?%40%41123') is 'http://www.example.com/?%40%41123'
 PASS canonicalize('http://www.example.com/?q=你好') is 'http://www.example.com/?q=%26%2320320%3B%26%2322909%3B'
 PASS canonicalize('http://www.example.com/?q=\ud800\ud800') is 'http://www.example.com/?q=%26%2355296%3B%26%2355296%3B'
diff --git a/LayoutTests/fast/url/script-tests/segments-from-data-url.js b/LayoutTests/fast/url/script-tests/segments-from-data-url.js
index 8fc3013..5c4ae02 100644
--- a/LayoutTests/fast/url/script-tests/segments-from-data-url.js
+++ b/LayoutTests/fast/url/script-tests/segments-from-data-url.js
@@ -14,7 +14,7 @@ cases = [
   ["http://f:00000000000000000000080/c",     ["http:","f","0","/c","",""]],
   ["http://f:b/c",                           [":","","0","","",""]],
   ["http://f: /c",                           [":","","0","","",""]],
-  ["http://f:\\n/c",                         ["http:","f","0","/c","",""]],
+  ["http://f:\\n/c",                         [":","","0","","",""]],
   ["http://f:fifty-two/c",                   [":","","0","","",""]],
   ["http://f:999999/c",                      [":","","0","","",""]],
   ["http://f: 21 / b ? d # e ",              [":","","0","","",""]],
diff --git a/LayoutTests/fast/url/script-tests/segments.js b/LayoutTests/fast/url/script-tests/segments.js
index c0c6fa1..c621da1 100644
--- a/LayoutTests/fast/url/script-tests/segments.js
+++ b/LayoutTests/fast/url/script-tests/segments.js
@@ -14,7 +14,7 @@ cases = [
   ["http://f:00000000000000000000080/c",     ["http:","f","0","/c","",""]],
   ["http://f:b/c",                           [":","","0","","",""]],
   ["http://f: /c",                           [":","","0","","",""]],
-  ["http://f:\\n/c",                         ["http:","f","0","/c","",""]],
+  ["http://f:\\n/c",                         [":","","0","","",""]],
   ["http://f:fifty-two/c",                   [":","","0","","",""]],
   ["http://f:999999/c",                      [":","","0","","",""]],
   ["http://f: 21 / b ? d # e ",              [":","","0","","",""]],
diff --git a/LayoutTests/fast/url/segments-expected.txt b/LayoutTests/fast/url/segments-expected.txt
index 3833f36..2da6912 100644
--- a/LayoutTests/fast/url/segments-expected.txt
+++ b/LayoutTests/fast/url/segments-expected.txt
@@ -15,7 +15,7 @@ PASS segments('http://f:00000000000000/c') is '["http:","f","0","/c","",""]'
 FAIL segments('http://f:00000000000000000000080/c') should be ["http:","f","0","/c","",""]. Was ["http:","f","80","/c","",""].
 PASS segments('http://f:b/c') is '[":","","0","","",""]'
 PASS segments('http://f: /c') is '[":","","0","","",""]'
-PASS segments('http://f:\n/c') is '["http:","f","0","/c","",""]'
+PASS segments('http://f:\n/c') is '[":","","0","","",""]'
 PASS segments('http://f:fifty-two/c') is '[":","","0","","",""]'
 FAIL segments('http://f:999999/c') should be [":","","0","","",""]. Was ["http:","f","65535","/c","",""].
 PASS segments('http://f: 21 / b ? d # e ') is '[":","","0","","",""]'
diff --git a/LayoutTests/fast/url/segments-from-data-url-expected.txt b/LayoutTests/fast/url/segments-from-data-url-expected.txt
index 5d102ef..6e1853e 100644
--- a/LayoutTests/fast/url/segments-from-data-url-expected.txt
+++ b/LayoutTests/fast/url/segments-from-data-url-expected.txt
@@ -15,7 +15,7 @@ PASS segments('http://f:00000000000000/c') is '["http:","f","0","/c","",""]'
 FAIL segments('http://f:00000000000000000000080/c') should be ["http:","f","0","/c","",""]. Was ["http:","f","80","/c","",""].
 PASS segments('http://f:b/c') is '[":","","0","","",""]'
 PASS segments('http://f: /c') is '[":","","0","","",""]'
-PASS segments('http://f:\n/c') is '["http:","f","0","/c","",""]'
+PASS segments('http://f:\n/c') is '[":","","0","","",""]'
 PASS segments('http://f:fifty-two/c') is '[":","","0","","",""]'
 FAIL segments('http://f:999999/c') should be [":","","0","","",""]. Was ["http:","f","65535","/c","",""].
 PASS segments('http://f: 21 / b ? d # e ') is '[":","","0","","",""]'
diff --git a/LayoutTests/http/tests/security/javascriptURL/javascriptURL-execution-context-frame-location-htmldom-expected.txt b/LayoutTests/http/tests/security/javascriptURL/javascriptURL-execution-context-frame-location-htmldom-expected.txt
index 4c868f6..a168a94 100644
--- a/LayoutTests/http/tests/security/javascriptURL/javascriptURL-execution-context-frame-location-htmldom-expected.txt
+++ b/LayoutTests/http/tests/security/javascriptURL/javascriptURL-execution-context-frame-location-htmldom-expected.txt
@@ -2,12 +2,6 @@ CONSOLE MESSAGE: line 1: Unsafe JavaScript attempt to access frame with URL http
 
 CONSOLE MESSAGE: line 1: Unsafe JavaScript attempt to access frame with URL http://localhost:8000/security/resources/cross-frame-iframe.html from frame with URL http://127.0.0.1:8000/security/javascriptURL/javascriptURL-execution-context-frame-location-htmldom.html. Domains, protocols and ports must match.
 
-CONSOLE MESSAGE: line 1: Unsafe JavaScript attempt to access frame with URL http://localhost:8000/security/resources/cross-frame-iframe.html from frame with URL http://127.0.0.1:8000/security/javascriptURL/javascriptURL-execution-context-frame-location-htmldom.html. Domains, protocols and ports must match.
-
-CONSOLE MESSAGE: line 1: Unsafe JavaScript attempt to access frame with URL http://localhost:8000/security/resources/cross-frame-iframe.html from frame with URL http://127.0.0.1:8000/security/javascriptURL/javascriptURL-execution-context-frame-location-htmldom.html. Domains, protocols and ports must match.
-
-CONSOLE MESSAGE: line 1: Unsafe JavaScript attempt to access frame with URL http://localhost:8000/security/resources/cross-frame-iframe.html from frame with URL http://127.0.0.1:8000/security/javascriptURL/javascriptURL-execution-context-frame-location-htmldom.html. Domains, protocols and ports must match.
-
 
 
 --------
diff --git a/LayoutTests/http/tests/security/javascriptURL/javascriptURL-execution-context-frame-src-getAttribute-value-expected.txt b/LayoutTests/http/tests/security/javascriptURL/javascriptURL-execution-context-frame-src-getAttribute-value-expected.txt
index 2ebd586..8851e51 100644
--- a/LayoutTests/http/tests/security/javascriptURL/javascriptURL-execution-context-frame-src-getAttribute-value-expected.txt
+++ b/LayoutTests/http/tests/security/javascriptURL/javascriptURL-execution-context-frame-src-getAttribute-value-expected.txt
@@ -2,12 +2,6 @@ CONSOLE MESSAGE: line 1: Unsafe JavaScript attempt to access frame with URL http
 
 CONSOLE MESSAGE: line 1: Unsafe JavaScript attempt to access frame with URL http://localhost:8000/security/resources/cross-frame-iframe.html from frame with URL http://127.0.0.1:8000/security/javascriptURL/javascriptURL-execution-context-frame-src-getAttribute-value.html. Domains, protocols and ports must match.
 
-CONSOLE MESSAGE: line 1: Unsafe JavaScript attempt to access frame with URL http://localhost:8000/security/resources/cross-frame-iframe.html from frame with URL http://127.0.0.1:8000/security/javascriptURL/javascriptURL-execution-context-frame-src-getAttribute-value.html. Domains, protocols and ports must match.
-
-CONSOLE MESSAGE: line 1: Unsafe JavaScript attempt to access frame with URL http://localhost:8000/security/resources/cross-frame-iframe.html from frame with URL http://127.0.0.1:8000/security/javascriptURL/javascriptURL-execution-context-frame-src-getAttribute-value.html. Domains, protocols and ports must match.
-
-CONSOLE MESSAGE: line 1: Unsafe JavaScript attempt to access frame with URL http://localhost:8000/security/resources/cross-frame-iframe.html from frame with URL http://127.0.0.1:8000/security/javascriptURL/javascriptURL-execution-context-frame-src-getAttribute-value.html. Domains, protocols and ports must match.
-
 
 
 --------
diff --git a/LayoutTests/http/tests/security/javascriptURL/javascriptURL-execution-context-frame-src-htmldom-expected.txt b/LayoutTests/http/tests/security/javascriptURL/javascriptURL-execution-context-frame-src-htmldom-expected.txt
index 9d835af..26b49c2 100644
--- a/LayoutTests/http/tests/security/javascriptURL/javascriptURL-execution-context-frame-src-htmldom-expected.txt
+++ b/LayoutTests/http/tests/security/javascriptURL/javascriptURL-execution-context-frame-src-htmldom-expected.txt
@@ -2,12 +2,6 @@ CONSOLE MESSAGE: line 1: Unsafe JavaScript attempt to access frame with URL http
 
 CONSOLE MESSAGE: line 1: Unsafe JavaScript attempt to access frame with URL http://localhost:8000/security/resources/cross-frame-iframe.html from frame with URL http://127.0.0.1:8000/security/javascriptURL/javascriptURL-execution-context-frame-src-htmldom.html. Domains, protocols and ports must match.
 
-CONSOLE MESSAGE: line 1: Unsafe JavaScript attempt to access frame with URL http://localhost:8000/security/resources/cross-frame-iframe.html from frame with URL http://127.0.0.1:8000/security/javascriptURL/javascriptURL-execution-context-frame-src-htmldom.html. Domains, protocols and ports must match.
-
-CONSOLE MESSAGE: line 1: Unsafe JavaScript attempt to access frame with URL http://localhost:8000/security/resources/cross-frame-iframe.html from frame with URL http://127.0.0.1:8000/security/javascriptURL/javascriptURL-execution-context-frame-src-htmldom.html. Domains, protocols and ports must match.
-
-CONSOLE MESSAGE: line 1: Unsafe JavaScript attempt to access frame with URL http://localhost:8000/security/resources/cross-frame-iframe.html from frame with URL http://127.0.0.1:8000/security/javascriptURL/javascriptURL-execution-context-frame-src-htmldom.html. Domains, protocols and ports must match.
-
 
 
 --------
diff --git a/LayoutTests/http/tests/security/javascriptURL/javascriptURL-execution-context-frame-src-setAttribute-expected.txt b/LayoutTests/http/tests/security/javascriptURL/javascriptURL-execution-context-frame-src-setAttribute-expected.txt
index 74d691e..248561d 100644
--- a/LayoutTests/http/tests/security/javascriptURL/javascriptURL-execution-context-frame-src-setAttribute-expected.txt
+++ b/LayoutTests/http/tests/security/javascriptURL/javascriptURL-execution-context-frame-src-setAttribute-expected.txt
@@ -2,12 +2,6 @@ CONSOLE MESSAGE: line 1: Unsafe JavaScript attempt to access frame with URL http
 
 CONSOLE MESSAGE: line 1: Unsafe JavaScript attempt to access frame with URL http://localhost:8000/security/resources/cross-frame-iframe.html from frame with URL http://127.0.0.1:8000/security/javascriptURL/javascriptURL-execution-context-frame-src-setAttribute.html. Domains, protocols and ports must match.
 
-CONSOLE MESSAGE: line 1: Unsafe JavaScript attempt to access frame with URL http://localhost:8000/security/resources/cross-frame-iframe.html from frame with URL http://127.0.0.1:8000/security/javascriptURL/javascriptURL-execution-context-frame-src-setAttribute.html. Domains, protocols and ports must match.
-
-CONSOLE MESSAGE: line 1: Unsafe JavaScript attempt to access frame with URL http://localhost:8000/security/resources/cross-frame-iframe.html from frame with URL http://127.0.0.1:8000/security/javascriptURL/javascriptURL-execution-context-frame-src-setAttribute.html. Domains, protocols and ports must match.
-
-CONSOLE MESSAGE: line 1: Unsafe JavaScript attempt to access frame with URL http://localhost:8000/security/resources/cross-frame-iframe.html from frame with URL http://127.0.0.1:8000/security/javascriptURL/javascriptURL-execution-context-frame-src-setAttribute.html. Domains, protocols and ports must match.
-
 
 
 --------
diff --git a/LayoutTests/http/tests/security/javascriptURL/javascriptURL-execution-context-frame-src-setAttributeNS-expected.txt b/LayoutTests/http/tests/security/javascriptURL/javascriptURL-execution-context-frame-src-setAttributeNS-expected.txt
index bbffda8..5f3a4eb 100644
--- a/LayoutTests/http/tests/security/javascriptURL/javascriptURL-execution-context-frame-src-setAttributeNS-expected.txt
+++ b/LayoutTests/http/tests/security/javascriptURL/javascriptURL-execution-context-frame-src-setAttributeNS-expected.txt
@@ -2,12 +2,6 @@ CONSOLE MESSAGE: line 1: Unsafe JavaScript attempt to access frame with URL http
 
 CONSOLE MESSAGE: line 1: Unsafe JavaScript attempt to access frame with URL http://localhost:8000/security/resources/cross-frame-iframe.html from frame with URL http://127.0.0.1:8000/security/javascriptURL/javascriptURL-execution-context-frame-src-setAttributeNS.html. Domains, protocols and ports must match.
 
-CONSOLE MESSAGE: line 1: Unsafe JavaScript attempt to access frame with URL http://localhost:8000/security/resources/cross-frame-iframe.html from frame with URL http://127.0.0.1:8000/security/javascriptURL/javascriptURL-execution-context-frame-src-setAttributeNS.html. Domains, protocols and ports must match.
-
-CONSOLE MESSAGE: line 1: Unsafe JavaScript attempt to access frame with URL http://localhost:8000/security/resources/cross-frame-iframe.html from frame with URL http://127.0.0.1:8000/security/javascriptURL/javascriptURL-execution-context-frame-src-setAttributeNS.html. Domains, protocols and ports must match.
-
-CONSOLE MESSAGE: line 1: Unsafe JavaScript attempt to access frame with URL http://localhost:8000/security/resources/cross-frame-iframe.html from frame with URL http://127.0.0.1:8000/security/javascriptURL/javascriptURL-execution-context-frame-src-setAttributeNS.html. Domains, protocols and ports must match.
-
 
 
 --------
diff --git a/LayoutTests/http/tests/security/javascriptURL/javascriptURL-execution-context-frame-src-setAttributeNode-expected.txt b/LayoutTests/http/tests/security/javascriptURL/javascriptURL-execution-context-frame-src-setAttributeNode-expected.txt
index 447a618..31fadeb 100644
--- a/LayoutTests/http/tests/security/javascriptURL/javascriptURL-execution-context-frame-src-setAttributeNode-expected.txt
+++ b/LayoutTests/http/tests/security/javascriptURL/javascriptURL-execution-context-frame-src-setAttributeNode-expected.txt
@@ -2,12 +2,6 @@ CONSOLE MESSAGE: line 1: Unsafe JavaScript attempt to access frame with URL http
 
 CONSOLE MESSAGE: line 1: Unsafe JavaScript attempt to access frame with URL http://localhost:8000/security/resources/cross-frame-iframe.html from frame with URL http://127.0.0.1:8000/security/javascriptURL/javascriptURL-execution-context-frame-src-setAttributeNode.html. Domains, protocols and ports must match.
 
-CONSOLE MESSAGE: line 1: Unsafe JavaScript attempt to access frame with URL http://localhost:8000/security/resources/cross-frame-iframe.html from frame with URL http://127.0.0.1:8000/security/javascriptURL/javascriptURL-execution-context-frame-src-setAttributeNode.html. Domains, protocols and ports must match.
-
-CONSOLE MESSAGE: line 1: Unsafe JavaScript attempt to access frame with URL http://localhost:8000/security/resources/cross-frame-iframe.html from frame with URL http://127.0.0.1:8000/security/javascriptURL/javascriptURL-execution-context-frame-src-setAttributeNode.html. Domains, protocols and ports must match.
-
-CONSOLE MESSAGE: line 1: Unsafe JavaScript attempt to access frame with URL http://localhost:8000/security/resources/cross-frame-iframe.html from frame with URL http://127.0.0.1:8000/security/javascriptURL/javascriptURL-execution-context-frame-src-setAttributeNode.html. Domains, protocols and ports must match.
-
 
 
 --------
diff --git a/LayoutTests/http/tests/security/javascriptURL/javascriptURL-execution-context-frame-src-setAttributeNodeNS-expected.txt b/LayoutTests/http/tests/security/javascriptURL/javascriptURL-execution-context-frame-src-setAttributeNodeNS-expected.txt
index 1c8f812..0b449de 100644
--- a/LayoutTests/http/tests/security/javascriptURL/javascriptURL-execution-context-frame-src-setAttributeNodeNS-expected.txt
+++ b/LayoutTests/http/tests/security/javascriptURL/javascriptURL-execution-context-frame-src-setAttributeNodeNS-expected.txt
@@ -2,12 +2,6 @@ CONSOLE MESSAGE: line 1: Unsafe JavaScript attempt to access frame with URL http
 
 CONSOLE MESSAGE: line 1: Unsafe JavaScript attempt to access frame with URL http://localhost:8000/security/resources/cross-frame-iframe.html from frame with URL http://127.0.0.1:8000/security/javascriptURL/javascriptURL-execution-context-frame-src-setAttributeNodeNS.html. Domains, protocols and ports must match.
 
-CONSOLE MESSAGE: line 1: Unsafe JavaScript attempt to access frame with URL http://localhost:8000/security/resources/cross-frame-iframe.html from frame with URL http://127.0.0.1:8000/security/javascriptURL/javascriptURL-execution-context-frame-src-setAttributeNodeNS.html. Domains, protocols and ports must match.
-
-CONSOLE MESSAGE: line 1: Unsafe JavaScript attempt to access frame with URL http://localhost:8000/security/resources/cross-frame-iframe.html from frame with URL http://127.0.0.1:8000/security/javascriptURL/javascriptURL-execution-context-frame-src-setAttributeNodeNS.html. Domains, protocols and ports must match.
-
-CONSOLE MESSAGE: line 1: Unsafe JavaScript attempt to access frame with URL http://localhost:8000/security/resources/cross-frame-iframe.html from frame with URL http://127.0.0.1:8000/security/javascriptURL/javascriptURL-execution-context-frame-src-setAttributeNodeNS.html. Domains, protocols and ports must match.
-
 
 
 --------
diff --git a/LayoutTests/http/tests/security/javascriptURL/javascriptURL-execution-context-iframe-src-getAttribute-value-expected.txt b/LayoutTests/http/tests/security/javascriptURL/javascriptURL-execution-context-iframe-src-getAttribute-value-expected.txt
index 04318b5..0d659b0 100644
--- a/LayoutTests/http/tests/security/javascriptURL/javascriptURL-execution-context-iframe-src-getAttribute-value-expected.txt
+++ b/LayoutTests/http/tests/security/javascriptURL/javascriptURL-execution-context-iframe-src-getAttribute-value-expected.txt
@@ -2,12 +2,6 @@ CONSOLE MESSAGE: line 1: Unsafe JavaScript attempt to access frame with URL http
 
 CONSOLE MESSAGE: line 1: Unsafe JavaScript attempt to access frame with URL http://localhost:8000/security/resources/cross-frame-iframe.html from frame with URL http://127.0.0.1:8000/security/javascriptURL/javascriptURL-execution-context-iframe-src-getAttribute-value.html. Domains, protocols and ports must match.
 
-CONSOLE MESSAGE: line 1: Unsafe JavaScript attempt to access frame with URL http://localhost:8000/security/resources/cross-frame-iframe.html from frame with URL http://127.0.0.1:8000/security/javascriptURL/javascriptURL-execution-context-iframe-src-getAttribute-value.html. Domains, protocols and ports must match.
-
-CONSOLE MESSAGE: line 1: Unsafe JavaScript attempt to access frame with URL http://localhost:8000/security/resources/cross-frame-iframe.html from frame with URL http://127.0.0.1:8000/security/javascriptURL/javascriptURL-execution-context-iframe-src-getAttribute-value.html. Domains, protocols and ports must match.
-
-CONSOLE MESSAGE: line 1: Unsafe JavaScript attempt to access frame with URL http://localhost:8000/security/resources/cross-frame-iframe.html from frame with URL http://127.0.0.1:8000/security/javascriptURL/javascriptURL-execution-context-iframe-src-getAttribute-value.html. Domains, protocols and ports must match.
-
 This test passes as long as the word 'FAIL' and an accompanying message do not appear in the subframe.
 
 
diff --git a/LayoutTests/http/tests/security/javascriptURL/javascriptURL-execution-context-iframe-src-htmldom-expected.txt b/LayoutTests/http/tests/security/javascriptURL/javascriptURL-execution-context-iframe-src-htmldom-expected.txt
index 6c7b325..f64081c 100644
--- a/LayoutTests/http/tests/security/javascriptURL/javascriptURL-execution-context-iframe-src-htmldom-expected.txt
+++ b/LayoutTests/http/tests/security/javascriptURL/javascriptURL-execution-context-iframe-src-htmldom-expected.txt
@@ -2,12 +2,6 @@ CONSOLE MESSAGE: line 1: Unsafe JavaScript attempt to access frame with URL http
 
 CONSOLE MESSAGE: line 1: Unsafe JavaScript attempt to access frame with URL http://localhost:8000/security/resources/cross-frame-iframe.html from frame with URL http://127.0.0.1:8000/security/javascriptURL/javascriptURL-execution-context-iframe-src-htmldom.html. Domains, protocols and ports must match.
 
-CONSOLE MESSAGE: line 1: Unsafe JavaScript attempt to access frame with URL http://localhost:8000/security/resources/cross-frame-iframe.html from frame with URL http://127.0.0.1:8000/security/javascriptURL/javascriptURL-execution-context-iframe-src-htmldom.html. Domains, protocols and ports must match.
-
-CONSOLE MESSAGE: line 1: Unsafe JavaScript attempt to access frame with URL http://localhost:8000/security/resources/cross-frame-iframe.html from frame with URL http://127.0.0.1:8000/security/javascriptURL/javascriptURL-execution-context-iframe-src-htmldom.html. Domains, protocols and ports must match.
-
-CONSOLE MESSAGE: line 1: Unsafe JavaScript attempt to access frame with URL http://localhost:8000/security/resources/cross-frame-iframe.html from frame with URL http://127.0.0.1:8000/security/javascriptURL/javascriptURL-execution-context-iframe-src-htmldom.html. Domains, protocols and ports must match.
-
 This test passes as long as the word 'FAIL' and an accompanying message do not appear in the subframe.
 
 
diff --git a/LayoutTests/http/tests/security/javascriptURL/javascriptURL-execution-context-iframe-src-setAttribute-expected.txt b/LayoutTests/http/tests/security/javascriptURL/javascriptURL-execution-context-iframe-src-setAttribute-expected.txt
index 9fcd1fe..c3fe3f4 100644
--- a/LayoutTests/http/tests/security/javascriptURL/javascriptURL-execution-context-iframe-src-setAttribute-expected.txt
+++ b/LayoutTests/http/tests/security/javascriptURL/javascriptURL-execution-context-iframe-src-setAttribute-expected.txt
@@ -2,12 +2,6 @@ CONSOLE MESSAGE: line 1: Unsafe JavaScript attempt to access frame with URL http
 
 CONSOLE MESSAGE: line 1: Unsafe JavaScript attempt to access frame with URL http://localhost:8000/security/resources/cross-frame-iframe.html from frame with URL http://127.0.0.1:8000/security/javascriptURL/javascriptURL-execution-context-iframe-src-setAttribute.html. Domains, protocols and ports must match.
 
-CONSOLE MESSAGE: line 1: Unsafe JavaScript attempt to access frame with URL http://localhost:8000/security/resources/cross-frame-iframe.html from frame with URL http://127.0.0.1:8000/security/javascriptURL/javascriptURL-execution-context-iframe-src-setAttribute.html. Domains, protocols and ports must match.
-
-CONSOLE MESSAGE: line 1: Unsafe JavaScript attempt to access frame with URL http://localhost:8000/security/resources/cross-frame-iframe.html from frame with URL http://127.0.0.1:8000/security/javascriptURL/javascriptURL-execution-context-iframe-src-setAttribute.html. Domains, protocols and ports must match.
-
-CONSOLE MESSAGE: line 1: Unsafe JavaScript attempt to access frame with URL http://localhost:8000/security/resources/cross-frame-iframe.html from frame with URL http://127.0.0.1:8000/security/javascriptURL/javascriptURL-execution-context-iframe-src-setAttribute.html. Domains, protocols and ports must match.
-
 This test passes as long as the word 'FAIL' and an accompanying message do not appear in the subframe.
 
 
diff --git a/LayoutTests/http/tests/security/javascriptURL/javascriptURL-execution-context-iframe-src-setAttributeNS-expected.txt b/LayoutTests/http/tests/security/javascriptURL/javascriptURL-execution-context-iframe-src-setAttributeNS-expected.txt
index 87e2ddb..68c39a6 100644
--- a/LayoutTests/http/tests/security/javascriptURL/javascriptURL-execution-context-iframe-src-setAttributeNS-expected.txt
+++ b/LayoutTests/http/tests/security/javascriptURL/javascriptURL-execution-context-iframe-src-setAttributeNS-expected.txt
@@ -2,12 +2,6 @@ CONSOLE MESSAGE: line 1: Unsafe JavaScript attempt to access frame with URL http
 
 CONSOLE MESSAGE: line 1: Unsafe JavaScript attempt to access frame with URL http://localhost:8000/security/resources/cross-frame-iframe.html from frame with URL http://127.0.0.1:8000/security/javascriptURL/javascriptURL-execution-context-iframe-src-setAttributeNS.html. Domains, protocols and ports must match.
 
-CONSOLE MESSAGE: line 1: Unsafe JavaScript attempt to access frame with URL http://localhost:8000/security/resources/cross-frame-iframe.html from frame with URL http://127.0.0.1:8000/security/javascriptURL/javascriptURL-execution-context-iframe-src-setAttributeNS.html. Domains, protocols and ports must match.
-
-CONSOLE MESSAGE: line 1: Unsafe JavaScript attempt to access frame with URL http://localhost:8000/security/resources/cross-frame-iframe.html from frame with URL http://127.0.0.1:8000/security/javascriptURL/javascriptURL-execution-context-iframe-src-setAttributeNS.html. Domains, protocols and ports must match.
-
-CONSOLE MESSAGE: line 1: Unsafe JavaScript attempt to access frame with URL http://localhost:8000/security/resources/cross-frame-iframe.html from frame with URL http://127.0.0.1:8000/security/javascriptURL/javascriptURL-execution-context-iframe-src-setAttributeNS.html. Domains, protocols and ports must match.
-
 This test passes as long as the word 'FAIL' and an accompanying message do not appear in the subframe.
 
 
diff --git a/LayoutTests/http/tests/security/javascriptURL/javascriptURL-execution-context-iframe-src-setAttributeNode-expected.txt b/LayoutTests/http/tests/security/javascriptURL/javascriptURL-execution-context-iframe-src-setAttributeNode-expected.txt
index 2237ba4..2ff536f 100644
--- a/LayoutTests/http/tests/security/javascriptURL/javascriptURL-execution-context-iframe-src-setAttributeNode-expected.txt
+++ b/LayoutTests/http/tests/security/javascriptURL/javascriptURL-execution-context-iframe-src-setAttributeNode-expected.txt
@@ -2,12 +2,6 @@ CONSOLE MESSAGE: line 1: Unsafe JavaScript attempt to access frame with URL http
 
 CONSOLE MESSAGE: line 1: Unsafe JavaScript attempt to access frame with URL http://localhost:8000/security/resources/cross-frame-iframe.html from frame with URL http://127.0.0.1:8000/security/javascriptURL/javascriptURL-execution-context-iframe-src-setAttributeNode.html. Domains, protocols and ports must match.
 
-CONSOLE MESSAGE: line 1: Unsafe JavaScript attempt to access frame with URL http://localhost:8000/security/resources/cross-frame-iframe.html from frame with URL http://127.0.0.1:8000/security/javascriptURL/javascriptURL-execution-context-iframe-src-setAttributeNode.html. Domains, protocols and ports must match.
-
-CONSOLE MESSAGE: line 1: Unsafe JavaScript attempt to access frame with URL http://localhost:8000/security/resources/cross-frame-iframe.html from frame with URL http://127.0.0.1:8000/security/javascriptURL/javascriptURL-execution-context-iframe-src-setAttributeNode.html. Domains, protocols and ports must match.
-
-CONSOLE MESSAGE: line 1: Unsafe JavaScript attempt to access frame with URL http://localhost:8000/security/resources/cross-frame-iframe.html from frame with URL http://127.0.0.1:8000/security/javascriptURL/javascriptURL-execution-context-iframe-src-setAttributeNode.html. Domains, protocols and ports must match.
-
 This test passes as long as the word 'FAIL' and an accompanying message do not appear in the subframe.
 
 
diff --git a/LayoutTests/http/tests/security/javascriptURL/javascriptURL-execution-context-iframe-src-setAttributeNodeNS-expected.txt b/LayoutTests/http/tests/security/javascriptURL/javascriptURL-execution-context-iframe-src-setAttributeNodeNS-expected.txt
index db12bd1..08d40b5 100644
--- a/LayoutTests/http/tests/security/javascriptURL/javascriptURL-execution-context-iframe-src-setAttributeNodeNS-expected.txt
+++ b/LayoutTests/http/tests/security/javascriptURL/javascriptURL-execution-context-iframe-src-setAttributeNodeNS-expected.txt
@@ -2,12 +2,6 @@ CONSOLE MESSAGE: line 1: Unsafe JavaScript attempt to access frame with URL http
 
 CONSOLE MESSAGE: line 1: Unsafe JavaScript attempt to access frame with URL http://localhost:8000/security/resources/cross-frame-iframe.html from frame with URL http://127.0.0.1:8000/security/javascriptURL/javascriptURL-execution-context-iframe-src-setAttributeNodeNS.html. Domains, protocols and ports must match.
 
-CONSOLE MESSAGE: line 1: Unsafe JavaScript attempt to access frame with URL http://localhost:8000/security/resources/cross-frame-iframe.html from frame with URL http://127.0.0.1:8000/security/javascriptURL/javascriptURL-execution-context-iframe-src-setAttributeNodeNS.html. Domains, protocols and ports must match.
-
-CONSOLE MESSAGE: line 1: Unsafe JavaScript attempt to access frame with URL http://localhost:8000/security/resources/cross-frame-iframe.html from frame with URL http://127.0.0.1:8000/security/javascriptURL/javascriptURL-execution-context-iframe-src-setAttributeNodeNS.html. Domains, protocols and ports must match.
-
-CONSOLE MESSAGE: line 1: Unsafe JavaScript attempt to access frame with URL http://localhost:8000/security/resources/cross-frame-iframe.html from frame with URL http://127.0.0.1:8000/security/javascriptURL/javascriptURL-execution-context-iframe-src-setAttributeNodeNS.html. Domains, protocols and ports must match.
-
 This test passes as long as the word 'FAIL' and an accompanying message do not appear in the subframe.
 
 
diff --git a/LayoutTests/http/tests/security/xssAuditor/embed-tag-control-char-expected.txt b/LayoutTests/http/tests/security/xssAuditor/embed-tag-control-char-expected.txt
index 0be2156..9150199 100644
--- a/LayoutTests/http/tests/security/xssAuditor/embed-tag-control-char-expected.txt
+++ b/LayoutTests/http/tests/security/xssAuditor/embed-tag-control-char-expected.txt
@@ -1,3 +1,3 @@
-CONSOLE MESSAGE: line 1: Refused to load an object. URL found within request: "http://127.0.0.1:8000/security/xssAuditor/resources/dummy.swf".
+CONSOLE MESSAGE: line 1: Refused to load an object. URL found within request: "http://127.0.0.1:8000/security/xssAuditor/resources/dummy.swf".
 
 
diff --git a/LayoutTests/http/tests/security/xssAuditor/object-embed-tag-control-char-expected.txt b/LayoutTests/http/tests/security/xssAuditor/object-embed-tag-control-char-expected.txt
index 0b106c4..b8cec5c 100644
--- a/LayoutTests/http/tests/security/xssAuditor/object-embed-tag-control-char-expected.txt
+++ b/LayoutTests/http/tests/security/xssAuditor/object-embed-tag-control-char-expected.txt
@@ -1,5 +1,5 @@
-CONSOLE MESSAGE: line 1: Refused to load an object. URL found within request: "http://127.0.0.1:8000/security/xssAuditor/resources/dummy.swf".
+CONSOLE MESSAGE: line 1: Refused to load an object. URL found within request: "http://127.0.0.1:8000/security/xssAuditor/resources/dummy.swf".
 
-CONSOLE MESSAGE: line 1: Refused to load an object. URL found within request: "http://127.0.0.1:8000/security/xssAuditor/resources/dummy.swf".
+CONSOLE MESSAGE: line 1: Refused to load an object. URL found within request: "http://127.0.0.1:8000/security/xssAuditor/resources/dummy.swf".
 
 
diff --git a/WebCore/Android.mk b/WebCore/Android.mk
index 7047e7e..bef9a85 100644
--- a/WebCore/Android.mk
+++ b/WebCore/Android.mk
@@ -38,7 +38,6 @@ LOCAL_SRC_FILES := \
 	css/CSSFontSelector.cpp \
 	css/CSSFunctionValue.cpp \
 	css/CSSGradientValue.cpp \
-	css/CSSHelper.cpp \
 	css/CSSImageGeneratorValue.cpp \
 	css/CSSImageValue.cpp \
 	css/CSSImportRule.cpp \
diff --git a/WebCore/CMakeLists.txt b/WebCore/CMakeLists.txt
index 6e32ddf..5c4df82 100644
--- a/WebCore/CMakeLists.txt
+++ b/WebCore/CMakeLists.txt
@@ -725,7 +725,6 @@ SET(WebCore_SOURCES
     css/CSSFontSelector.cpp
     css/CSSFunctionValue.cpp
     css/CSSGradientValue.cpp
-    css/CSSHelper.cpp
     css/CSSImageGeneratorValue.cpp
     css/CSSImageValue.cpp
     css/CSSImportRule.cpp
diff --git a/WebCore/ChangeLog b/WebCore/ChangeLog
index 21353e3..c5f6754 100644
--- a/WebCore/ChangeLog
+++ b/WebCore/ChangeLog
@@ -1,3 +1,121 @@
+2010-09-30  Darin Adler  <darin at apple.com>
+
+        Reviewed by Sam Weinig.
+
+        Remove remaining calls to deprecatedParseURL
+        https://bugs.webkit.org/show_bug.cgi?id=26599
+
+        Test: fast/replaced/object-param-spaces.html
+
+        * css/CSSHelper.cpp: Removed.
+        * css/CSSHelper.h: Removed deprecatedParseURL.
+
+        * html/parser/HTMLParserIdioms.cpp:
+        (WebCore::stripLeadingAndTrailingHTMLSpaces):
+        Fixed bug where the function would turn the null string into the empty string.
+        Fixed bug where the function would not strip all trailing spaces.
+
+        * html/parser/CSSPreloadScanner.cpp:
+        (WebCore::CSSPreloadScanner::CSSPreloadScanner): Initialize m_state
+        instead of calling the reset function.
+        (WebCore::CSSPreloadScanner::scan): Tweaked coding style.
+        (WebCore::CSSPreloadScanner::tokenize): Use isHTMLSpace instead of
+        an identical local function named isWhitespace.
+        (WebCore::parseCSSStringOrURL): Added. This function does what
+        deprecatedParseURL did before, and this is the only place in WebKit
+        that needs it. The code implements the rules for a string or URL
+        token. The real CSS parser does this with flex and the code to hook
+        flex up to yacc, so the function is not needed there.
+        (WebCore::CSSPreloadScanner::emitRule): Streamlined the code a bit
+        and mae it call parseCSSStringOrURL.
+
+        * bindings/generic/BindingSecurity.h:
+        (WebCore::::allowSettingFrameSrcToJavascriptUrl):
+        * bindings/js/JSDOMBinding.cpp:
+        (WebCore::allowSettingSrcToJavascriptURL):
+        * bindings/js/JSHTMLFrameElementCustom.cpp:
+        (WebCore::allowSettingJavascriptURL):
+        * bindings/objc/DOM.mm:
+        (-[DOMElement _getURLAttribute:]):
+        * bindings/objc/DOMHTML.mm:
+        (-[DOMHTMLDocument _createDocumentFragmentWithMarkupString:baseURLString:]):
+        * dom/Document.cpp:
+        (WebCore::Document::processBaseElement):
+        * dom/Element.cpp:
+        (WebCore::isAttributeToRemove):
+        (WebCore::Element::getURLAttribute):
+        (WebCore::Element::getNonEmptyURLAttribute):
+        * html/HTMLAnchorElement.cpp:
+        (WebCore::HTMLAnchorElement::defaultEventHandler):
+        (WebCore::HTMLAnchorElement::parseMappedAttribute):
+        (WebCore::HTMLAnchorElement::href):
+        * html/HTMLBodyElement.cpp:
+        (WebCore::HTMLBodyElement::parseMappedAttribute):
+        * html/HTMLEmbedElement.cpp:
+        (WebCore::HTMLEmbedElement::parseMappedAttribute):
+        * html/HTMLFrameElementBase.cpp:
+        (WebCore::HTMLFrameElementBase::parseMappedAttribute):
+        * html/HTMLImageElement.cpp:
+        (WebCore::HTMLImageElement::parseMappedAttribute):
+        * html/HTMLImageLoader.cpp:
+        (WebCore::HTMLImageLoader::sourceURI):
+        * html/HTMLLinkElement.cpp:
+        (WebCore::HTMLLinkElement::parseMappedAttribute):
+        * html/HTMLMediaElement.cpp:
+        * html/HTMLObjectElement.cpp:
+        (WebCore::HTMLObjectElement::parseMappedAttribute):
+        (WebCore::HTMLObjectElement::parametersForPlugin):
+        * html/HTMLTableElement.cpp:
+        (WebCore::HTMLTableElement::parseMappedAttribute):
+        * html/HTMLTablePartElement.cpp:
+        (WebCore::HTMLTablePartElement::parseMappedAttribute):
+        * html/parser/HTMLPreloadScanner.cpp:
+        (WebCore::HTMLNames::PreloadTask::setUrlToLoad):
+        * loader/FormSubmission.cpp:
+        (WebCore::FormSubmission::Attributes::parseAction):
+        * platform/chromium/ClipboardChromium.cpp:
+        (WebCore::ClipboardChromium::declareAndWriteDragImage):
+        * platform/chromium/PasteboardChromium.cpp:
+        (WebCore::Pasteboard::writeImage):
+        * platform/qt/ClipboardQt.cpp:
+        (WebCore::ClipboardQt::declareAndWriteDragImage):
+        * platform/win/ClipboardWin.cpp:
+        (WebCore::ClipboardWin::declareAndWriteDragImage):
+        * rendering/HitTestResult.cpp:
+        (WebCore::HitTestResult::absoluteImageURL):
+        (WebCore::HitTestResult::absoluteMediaURL):
+        (WebCore::HitTestResult::absoluteLinkURL):
+        * svg/SVGAElement.cpp:
+        (WebCore::SVGAElement::defaultEventHandler):
+        * svg/SVGImageLoader.cpp:
+        (WebCore::SVGImageLoader::sourceURI):
+        * wml/WMLAElement.cpp:
+        (WebCore::WMLAElement::defaultEventHandler):
+        * wml/WMLImageLoader.cpp:
+        (WebCore::WMLImageLoader::sourceURI):
+        Call stripLeadingAndTrailingHTMLSpaces instead of deprecatedParseURL.
+
+        * WebCore.exp.in: Updated.
+
+        * Android.mk: Removed CSSHelper.cpp.
+        * CMakeLists.txt: Ditto.
+        * GNUmakefile.am: Ditto.
+        * WebCore.gypi: Ditto.
+        * WebCore.pro: Ditto.
+        * WebCore.vcproj/WebCore.vcproj: Ditto.
+        * WebCore.xcodeproj/project.pbxproj: Ditto.
+
+        * bindings/js/JSAttrCustom.cpp:
+        * bindings/js/JSElementCustom.cpp:
+        * bindings/v8/custom/V8ElementCustom.cpp:
+        * bindings/v8/custom/V8LocationCustom.cpp:
+        * css/CSSParser.cpp:
+        * html/HTMLMediaElement.cpp:
+        * html/HTMLVideoElement.cpp:
+        * loader/ImageLoader.cpp:
+        * rendering/style/RenderStyle.h:
+        Removed unneeded include of CSSHelper.h.
+
 2010-09-30  Alexey Marinichev  <amarinichev at chromium.org>
 
         Reviewed by Chris Marrin.
diff --git a/WebCore/GNUmakefile.am b/WebCore/GNUmakefile.am
index 6bea52f..5118f63 100644
--- a/WebCore/GNUmakefile.am
+++ b/WebCore/GNUmakefile.am
@@ -912,7 +912,6 @@ webcore_sources += \
 	WebCore/css/CSSFunctionValue.h \
 	WebCore/css/CSSGradientValue.cpp \
 	WebCore/css/CSSGradientValue.h \
-	WebCore/css/CSSHelper.cpp \
 	WebCore/css/CSSHelper.h \
 	WebCore/css/CSSImageGeneratorValue.cpp \
 	WebCore/css/CSSImageGeneratorValue.h \
diff --git a/WebCore/WebCore.exp.in b/WebCore/WebCore.exp.in
index 1f71d00..4078480 100644
--- a/WebCore/WebCore.exp.in
+++ b/WebCore/WebCore.exp.in
@@ -137,6 +137,7 @@ __ZN3JSC8Bindings8Instance16newRuntimeObjectEPNS_9ExecStateE
 __ZN3WTF10StringImplcvP8NSStringEv
 __ZN3WTF6StringC1EP8NSString
 __ZN3WTF6StringC1EPK10__CFString
+__ZN7WebCore10JSDocument6s_infoE
 __ZN7WebCore10MouseEventC1ERKN3WTF12AtomicStringEbbNS1_10PassRefPtrINS_9DOMWindowEEEiiiiibbbbtNS5_INS_11EventTargetEEENS5_INS_9ClipboardEEEb
 __ZN7WebCore10ScrollView20setCanHaveScrollbarsEb
 __ZN7WebCore10ScrollView24windowResizerRectChangedEv
@@ -280,6 +281,7 @@ __ZN7WebCore12iconDatabaseEv
 __ZN7WebCore13AXObjectCache11getOrCreateEPNS_12RenderObjectE
 __ZN7WebCore13AXObjectCache21gAccessibilityEnabledE
 __ZN7WebCore13AXObjectCache42gAccessibilityEnhancedUserInterfaceEnabledE
+__ZN7WebCore13HitTestResult13rectFromPointERKNS_8IntPointEjjjj
 __ZN7WebCore13HitTestResultC1ERKS0_
 __ZN7WebCore13HitTestResultD1Ev
 __ZN7WebCore13IdentifierRep3getEPKc
@@ -410,7 +412,6 @@ __ZN7WebCore17HistoryController26saveDocumentAndScrollStateEv
 __ZN7WebCore17nameForCursorTypeENS_6Cursor4TypeE
 __ZN7WebCore17openTemporaryFileEPKcRi
 __ZN7WebCore18SearchPopupMenuMacC1EPNS_15PopupMenuClientE
-__ZN7WebCore18deprecatedParseURLERKN3WTF6StringE
 __ZN7WebCore18isStartOfParagraphERKNS_15VisiblePositionE
 __ZN7WebCore18pluginScriptObjectEPN3JSC9ExecStateEPNS_13JSHTMLElementE
 __ZN7WebCore19AnimationController16resumeAnimationsEPNS_8DocumentE
@@ -526,6 +527,7 @@ __ZN7WebCore32contextMenuItemTagSmartCopyPasteEv
 __ZN7WebCore32plainTextToMallocAllocatedBufferEPKNS_5RangeERjbNS_20TextIteratorBehaviorE
 __ZN7WebCore33contextMenuItemTagTextReplacementEv
 __ZN7WebCore33setDefaultThreadViolationBehaviorENS_23ThreadViolationBehaviorENS_20ThreadViolationRoundE
+__ZN7WebCore33stripLeadingAndTrailingHTMLSpacesERKN3WTF6StringE
 __ZN7WebCore34contextMenuItemTagDefaultDirectionEv
 __ZN7WebCore35contextMenuItemTagShowSpellingPanelEb
 __ZN7WebCore35contextMenuItemTagShowSubstitutionsEb
@@ -689,8 +691,6 @@ __ZN7WebCore8Document26pageSizeAndMarginsInPixelsEiRNS_7IntSizeERiS3_S3_S3_
 __ZN7WebCore8Document27removeMediaCanStartListenerEPNS_21MediaCanStartListenerE
 __ZN7WebCore8Document36updateLayoutIgnorePendingStylesheetsEv
 __ZN7WebCore8Document4headEv
-__ZNK7WebCore8Document13nodesFromRectEiijjjjb
-__ZN7WebCore10JSDocument6s_infoE
 __ZN7WebCore8FormData6createEPKvm
 __ZN7WebCore8FormDataD1Ev
 __ZN7WebCore8IntPointC1ERK8_NSPoint
@@ -923,7 +923,6 @@ __ZNK7WebCore13HitTestResult18titleDisplayStringEv
 __ZNK7WebCore13HitTestResult5imageEv
 __ZNK7WebCore13HitTestResult5titleERNS_13TextDirectionE
 __ZNK7WebCore13HitTestResult9imageRectEv
-__ZN7WebCore13HitTestResult13rectFromPointERKNS_8IntPointEjjjj
 __ZNK7WebCore13ResourceErrorcvP7NSErrorEv
 __ZNK7WebCore14DocumentLoader10requestURLEv
 __ZNK7WebCore14DocumentLoader11frameLoaderEv
@@ -1057,6 +1056,7 @@ __ZNK7WebCore7IntRectcv7_NSRectEv
 __ZNK7WebCore7IntSizecv7_NSSizeEv
 __ZNK7WebCore8Document11completeURLERKN3WTF6StringE
 __ZNK7WebCore8Document13axObjectCacheEv
+__ZNK7WebCore8Document13nodesFromRectEiijjjjb
 __ZNK7WebCore8Document14getElementByIdERKN3WTF12AtomicStringE
 __ZNK7WebCore8Document16dashboardRegionsEv
 __ZNK7WebCore8Document20cacheDocumentElementEv
diff --git a/WebCore/WebCore.gypi b/WebCore/WebCore.gypi
index e77ac55..e46491f 100644
--- a/WebCore/WebCore.gypi
+++ b/WebCore/WebCore.gypi
@@ -981,7 +981,6 @@
             'css/CSSFunctionValue.h',
             'css/CSSGradientValue.cpp',
             'css/CSSGradientValue.h',
-            'css/CSSHelper.cpp',
             'css/CSSHelper.h',
             'css/CSSImageGeneratorValue.cpp',
             'css/CSSImageGeneratorValue.h',
diff --git a/WebCore/WebCore.pro b/WebCore/WebCore.pro
index d17afc2..b6eaf8b 100644
--- a/WebCore/WebCore.pro
+++ b/WebCore/WebCore.pro
@@ -615,7 +615,6 @@ SOURCES += \
     css/CSSFontFaceSource.cpp \
     css/CSSFunctionValue.cpp \
     css/CSSGradientValue.cpp \
-    css/CSSHelper.cpp \
     css/CSSImageValue.cpp \
     css/CSSImageGeneratorValue.cpp \
     css/CSSImportRule.cpp \
diff --git a/WebCore/WebCore.vcproj/WebCore.vcproj b/WebCore/WebCore.vcproj/WebCore.vcproj
index 9126317..3d9c403 100644
--- a/WebCore/WebCore.vcproj/WebCore.vcproj
+++ b/WebCore/WebCore.vcproj/WebCore.vcproj
@@ -29617,10 +29617,6 @@
 				>
 			</File>
 			<File
-				RelativePath="..\css\CSSHelper.cpp"
-				>
-			</File>
-			<File
 				RelativePath="..\css\CSSHelper.h"
 				>
 			</File>
diff --git a/WebCore/WebCore.xcodeproj/project.pbxproj b/WebCore/WebCore.xcodeproj/project.pbxproj
index 4da1d29..0bc4b48 100644
--- a/WebCore/WebCore.xcodeproj/project.pbxproj
+++ b/WebCore/WebCore.xcodeproj/project.pbxproj
@@ -2738,7 +2738,7 @@
 		93E241FF0B2B4E4000C732A1 /* HTMLFrameOwnerElement.h in Headers */ = {isa = PBXBuildFile; fileRef = 93E241FE0B2B4E4000C732A1 /* HTMLFrameOwnerElement.h */; settings = {ATTRIBUTES = (Private, ); }; };
 		93E2425F0B2B509500C732A1 /* HTMLFrameOwnerElement.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 93E2425E0B2B509500C732A1 /* HTMLFrameOwnerElement.cpp */; };
 		93E2A306123E9DC0009FE12A /* HTMLParserIdioms.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 93E2A304123E9DC0009FE12A /* HTMLParserIdioms.cpp */; };
-		93E2A307123E9DC0009FE12A /* HTMLParserIdioms.h in Headers */ = {isa = PBXBuildFile; fileRef = 93E2A305123E9DC0009FE12A /* HTMLParserIdioms.h */; };
+		93E2A307123E9DC0009FE12A /* HTMLParserIdioms.h in Headers */ = {isa = PBXBuildFile; fileRef = 93E2A305123E9DC0009FE12A /* HTMLParserIdioms.h */; settings = {ATTRIBUTES = (Private, ); }; };
 		93E62D9B0985F41600E1B5E3 /* SystemTime.h in Headers */ = {isa = PBXBuildFile; fileRef = 93E62D990985F41600E1B5E3 /* SystemTime.h */; settings = {ATTRIBUTES = (Private, ); }; };
 		93EB169509F880B00091F8FF /* WebCoreSystemInterface.mm in Sources */ = {isa = PBXBuildFile; fileRef = 93EB169409F880B00091F8FF /* WebCoreSystemInterface.mm */; };
 		93EB169709F880C00091F8FF /* WebCoreSystemInterface.h in Headers */ = {isa = PBXBuildFile; fileRef = 93EB169609F880C00091F8FF /* WebCoreSystemInterface.h */; settings = {ATTRIBUTES = (Private, ); }; };
@@ -4828,7 +4828,6 @@
 		BC74DA481013F468007987AD /* JSRGBColor.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BC74DA461013F468007987AD /* JSRGBColor.cpp */; };
 		BC74DA491013F468007987AD /* JSRGBColor.h in Headers */ = {isa = PBXBuildFile; fileRef = BC74DA471013F468007987AD /* JSRGBColor.h */; };
 		BC76AC130DD7AD5C00415F34 /* ParserUtilities.h in Headers */ = {isa = PBXBuildFile; fileRef = BC76AC110DD7AD5C00415F34 /* ParserUtilities.h */; };
-		BC772B3B0C4EA91E0083285F /* CSSHelper.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BC772B350C4EA91E0083285F /* CSSHelper.cpp */; };
 		BC772B3C0C4EA91E0083285F /* CSSHelper.h in Headers */ = {isa = PBXBuildFile; fileRef = BC772B360C4EA91E0083285F /* CSSHelper.h */; settings = {ATTRIBUTES = (Private, ); }; };
 		BC772B3D0C4EA91E0083285F /* CSSParser.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BC772B370C4EA91E0083285F /* CSSParser.cpp */; };
 		BC772B3E0C4EA91E0083285F /* CSSParser.h in Headers */ = {isa = PBXBuildFile; fileRef = BC772B380C4EA91E0083285F /* CSSParser.h */; };
@@ -10741,7 +10740,6 @@
 		BC74DA461013F468007987AD /* JSRGBColor.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = JSRGBColor.cpp; sourceTree = "<group>"; };
 		BC74DA471013F468007987AD /* JSRGBColor.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = JSRGBColor.h; sourceTree = "<group>"; };
 		BC76AC110DD7AD5C00415F34 /* ParserUtilities.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ParserUtilities.h; sourceTree = "<group>"; };
-		BC772B350C4EA91E0083285F /* CSSHelper.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = CSSHelper.cpp; sourceTree = "<group>"; };
 		BC772B360C4EA91E0083285F /* CSSHelper.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = CSSHelper.h; sourceTree = "<group>"; };
 		BC772B370C4EA91E0083285F /* CSSParser.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = CSSParser.cpp; sourceTree = "<group>"; };
 		BC772B380C4EA91E0083285F /* CSSParser.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = CSSParser.h; sourceTree = "<group>"; };
@@ -17332,7 +17330,6 @@
 				BC23E4E00DAACE0F009FDC91 /* CSSGradientValue.cpp */,
 				BC53C6910DA591140021EB5D /* CSSGradientValue.h */,
 				BCEA477E097CAAC80094C9E4 /* CSSGrammar.y */,
-				BC772B350C4EA91E0083285F /* CSSHelper.cpp */,
 				BC772B360C4EA91E0083285F /* CSSHelper.h */,
 				BC23E76B0DAE88A9009FDC91 /* CSSImageGeneratorValue.cpp */,
 				BC23EE910DAED2BC009FDC91 /* CSSImageGeneratorValue.h */,
@@ -21388,7 +21385,6 @@
 				BC02A6460E09AAE9004B6D2B /* CSSFunctionValue.cpp in Sources */,
 				BC23E4E10DAACE0F009FDC91 /* CSSGradientValue.cpp in Sources */,
 				650F53DD09D15DDF00C9B0C8 /* CSSGrammar.cpp in Sources */,
-				BC772B3B0C4EA91E0083285F /* CSSHelper.cpp in Sources */,
 				BC23E76C0DAE88A9009FDC91 /* CSSImageGeneratorValue.cpp in Sources */,
 				A80E6CFE0A1989CA007FB8C5 /* CSSImageValue.cpp in Sources */,
 				A80E6CEB0A1989CA007FB8C5 /* CSSImportRule.cpp in Sources */,
diff --git a/WebCore/bindings/generic/BindingSecurity.h b/WebCore/bindings/generic/BindingSecurity.h
index 1124f7e..1ce556c 100644
--- a/WebCore/bindings/generic/BindingSecurity.h
+++ b/WebCore/bindings/generic/BindingSecurity.h
@@ -32,12 +32,12 @@
 #define BindingSecurity_h
 
 #include "BindingSecurityBase.h"
-#include "CSSHelper.h"
 #include "Element.h"
 #include "Frame.h"
 #include "GenericBinding.h"
 #include "HTMLFrameElementBase.h"
 #include "HTMLNames.h"
+#include "HTMLParserIdioms.h"
 #include "Settings.h"
 
 namespace WebCore {
@@ -128,7 +128,7 @@ bool BindingSecurity<Binding>::allowPopUp(State<Binding>* state)
 template <class Binding>
 bool BindingSecurity<Binding>::allowSettingFrameSrcToJavascriptUrl(State<Binding>* state, HTMLFrameElementBase* frame, String value)
 {
-    if (protocolIsJavaScript(deprecatedParseURL(value))) {
+    if (protocolIsJavaScript(stripLeadingAndTrailingHTMLSpaces(value))) {
         Node* contentDoc = frame->contentDocument();
         if (contentDoc && !checkNodeSecurity(state, contentDoc))
             return false;
diff --git a/WebCore/bindings/js/JSAttrCustom.cpp b/WebCore/bindings/js/JSAttrCustom.cpp
index 998ecad..227582d 100644
--- a/WebCore/bindings/js/JSAttrCustom.cpp
+++ b/WebCore/bindings/js/JSAttrCustom.cpp
@@ -29,7 +29,6 @@
 #include "config.h"
 #include "JSAttr.h"
 
-#include "CSSHelper.h"
 #include "Document.h"
 #include "Element.h"
 #include "HTMLNames.h"
diff --git a/WebCore/bindings/js/JSDOMBinding.cpp b/WebCore/bindings/js/JSDOMBinding.cpp
index 74c8131..d7c086a 100644
--- a/WebCore/bindings/js/JSDOMBinding.cpp
+++ b/WebCore/bindings/js/JSDOMBinding.cpp
@@ -24,7 +24,6 @@
 #include "debugger/DebuggerCallFrame.h"
 
 #include "ActiveDOMObject.h"
-#include "CSSHelper.h"
 #include "DOMCoreException.h"
 #include "DOMObjectHashTableMap.h"
 #include "Document.h"
@@ -648,7 +647,7 @@ bool shouldAllowNavigation(ExecState* exec, Frame* frame)
 
 bool allowSettingSrcToJavascriptURL(ExecState* exec, Element* element, const String& name, const String& value)
 {
-    if ((element->hasTagName(iframeTag) || element->hasTagName(frameTag)) && equalIgnoringCase(name, "src") && protocolIsJavaScript(deprecatedParseURL(value))) {
+    if ((element->hasTagName(iframeTag) || element->hasTagName(frameTag)) && equalIgnoringCase(name, "src") && protocolIsJavaScript(stripLeadingAndTrailingHTMLSpaces(value))) {
           Document* contentDocument = static_cast<HTMLFrameElementBase*>(element)->contentDocument();
           if (contentDocument && !checkNodeSecurity(exec, contentDocument))
               return false;
diff --git a/WebCore/bindings/js/JSElementCustom.cpp b/WebCore/bindings/js/JSElementCustom.cpp
index f691620..3bfe110 100644
--- a/WebCore/bindings/js/JSElementCustom.cpp
+++ b/WebCore/bindings/js/JSElementCustom.cpp
@@ -30,7 +30,6 @@
 #include "config.h"
 #include "JSElement.h"
 
-#include "CSSHelper.h"
 #include "Document.h"
 #include "ExceptionCode.h"
 #include "HTMLFrameElementBase.h"
diff --git a/WebCore/bindings/js/JSHTMLFrameElementCustom.cpp b/WebCore/bindings/js/JSHTMLFrameElementCustom.cpp
index 345cffe..5994167 100644
--- a/WebCore/bindings/js/JSHTMLFrameElementCustom.cpp
+++ b/WebCore/bindings/js/JSHTMLFrameElementCustom.cpp
@@ -29,10 +29,10 @@
 #include "config.h"
 #include "JSHTMLFrameElement.h"
 
-#include "CSSHelper.h"
 #include "Document.h"
 #include "HTMLFrameElement.h"
 #include "HTMLNames.h"
+#include "HTMLParserIdioms.h"
 #include "JSDOMBinding.h"
 
 using namespace JSC;
@@ -43,7 +43,7 @@ using namespace HTMLNames;
 
 static inline bool allowSettingJavascriptURL(ExecState* exec, HTMLFrameElement* imp, const String& value)
 {
-    if (protocolIsJavaScript(deprecatedParseURL(value))) {
+    if (protocolIsJavaScript(stripLeadingAndTrailingHTMLSpaces(value))) {
         Document* contentDocument = imp->contentDocument();
         if (contentDocument && !checkNodeSecurity(exec, contentDocument))
             return false;
diff --git a/WebCore/bindings/objc/DOM.mm b/WebCore/bindings/objc/DOM.mm
index c526123..44bd653 100644
--- a/WebCore/bindings/objc/DOM.mm
+++ b/WebCore/bindings/objc/DOM.mm
@@ -37,6 +37,7 @@
 #import "Frame.h"
 #import "HTMLElement.h"
 #import "HTMLNames.h"
+#import "HTMLParserIdioms.h"
 #import "Image.h"
 #import "NodeFilter.h"
 #import "RenderImage.h"
@@ -469,7 +470,7 @@ id <DOMEventTarget> kit(WebCore::EventTarget* eventTarget)
     ASSERT(name);
     WebCore::Element* element = core(self);
     ASSERT(element);
-    return element->document()->completeURL(deprecatedParseURL(element->getAttribute(name)));
+    return element->document()->completeURL(stripLeadingAndTrailingHTMLSpaces(element->getAttribute(name)));
 }
 
 - (BOOL)isFocused
diff --git a/WebCore/bindings/objc/DOMHTML.mm b/WebCore/bindings/objc/DOMHTML.mm
index 884a5b0..a2277d2 100644
--- a/WebCore/bindings/objc/DOMHTML.mm
+++ b/WebCore/bindings/objc/DOMHTML.mm
@@ -40,6 +40,7 @@
 #import "HTMLCollection.h"
 #import "HTMLDocument.h"
 #import "HTMLInputElement.h"
+#import "HTMLParserIdioms.h"
 #import "HTMLSelectElement.h"
 #import "HTMLTextAreaElement.h"
 #import "Page.h"
@@ -70,7 +71,7 @@
 
 - (DOMDocumentFragment *)_createDocumentFragmentWithMarkupString:(NSString *)markupString baseURLString:(NSString *)baseURLString
 {
-    NSURL *baseURL = core(self)->completeURL(WebCore::deprecatedParseURL(baseURLString));
+    NSURL *baseURL = core(self)->completeURL(WebCore::stripLeadingAndTrailingHTMLSpaces(baseURLString));
     return [self createDocumentFragmentWithMarkupString:markupString baseURL:baseURL];
 }
 
diff --git a/WebCore/bindings/v8/custom/V8ElementCustom.cpp b/WebCore/bindings/v8/custom/V8ElementCustom.cpp
index 3f6cd6a..02fc457 100644
--- a/WebCore/bindings/v8/custom/V8ElementCustom.cpp
+++ b/WebCore/bindings/v8/custom/V8ElementCustom.cpp
@@ -32,7 +32,6 @@
 #include "V8Element.h"
 
 #include "Attr.h"
-#include "CSSHelper.h"
 #include "Document.h"
 #include "Element.h"
 #include "ExceptionCode.h"
diff --git a/WebCore/bindings/v8/custom/V8LocationCustom.cpp b/WebCore/bindings/v8/custom/V8LocationCustom.cpp
index 6068aa2..7103eaa 100644
--- a/WebCore/bindings/v8/custom/V8LocationCustom.cpp
+++ b/WebCore/bindings/v8/custom/V8LocationCustom.cpp
@@ -31,7 +31,6 @@
 #include "config.h"
 #include "V8Location.h"
 
-#include "CSSHelper.h"
 #include "Document.h"
 #include "Frame.h"
 #include "FrameLoader.h"
diff --git a/WebCore/css/CSSHelper.cpp b/WebCore/css/CSSHelper.cpp
deleted file mode 100644
index e0ce7c3..0000000
--- a/WebCore/css/CSSHelper.cpp
+++ /dev/null
@@ -1,104 +0,0 @@
-/*
- * Copyright (C) 1999 Lars Knoll (knoll at kde.org)
- * Copyright (C) 2006, 2008 Apple Inc. All rights reserved.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB.  If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- *
- */
-
-#include "config.h"
-#include "CSSHelper.h"
-
-#include "PlatformString.h"
-#include <wtf/Vector.h>
-
-namespace WebCore {
-
-String deprecatedParseURL(const String& url)
-{
-    StringImpl* i = url.impl();
-    if (!i)
-        return url;
-
-    int length = i->length();
-
-    int o = 0;
-    int l = length;
-
-    while (0 < l && (*i)[o] <= ' ') {
-        ++o;
-        --l;
-    }
-    while (l > 0 && (*i)[o + l - 1] <= ' ')
-        --l;
-
-    if (l >= 5
-            && ((*i)[o] == 'u' || (*i)[o] == 'U')
-            && ((*i)[o + 1] == 'r' || (*i)[o + 1] == 'R')
-            && ((*i)[o + 2] == 'l' || (*i)[o + 2] == 'L')
-            && (*i)[o + 3] == '('
-            && (*i)[o + l - 1] == ')') {
-        o += 4;
-        l -= 5;
-    }
-
-    while (0 < l && (*i)[o] <= ' ') {
-        ++o;
-        --l;
-    }
-    while (l > 0 && (*i)[o + l - 1] <= ' ')
-        --l;
-
-    if (l >= 2 && (*i)[o] == (*i)[o + l - 1] && ((*i)[o] == '\'' || (*i)[o] == '\"')) {
-        o++;
-        l -= 2;
-    }
-
-    while (0 < l && (*i)[o] <= ' ') {
-        ++o;
-        --l;
-    }
-    while (l > 0 && (*i)[o + l - 1] <= ' ')
-        --l;
-
-    const UChar* characters = i->characters();
-
-    // Optimize for the likely case there there is nothing to strip.
-    if (l == length) {
-        int k;
-        // If the URL has any control characters in it, we have to strip them.
-        // '\r' (ascii value 13) is the largest control character.
-        for (k = 0; k < length; k++) {
-            if (characters[k] <= '\r')
-                break;
-        }
-        if (k == length)
-            return url;
-    }
-
-    Vector<UChar, 2048> buffer(l);
-
-    int nl = 0;
-    for (int k = o; k < o + l; k++) {
-        UChar c = characters[k];
-        if (c > '\r')
-            buffer[nl++] = c;
-    }
-
-    return String(buffer.data(), nl);
-}
-
-} // namespace WebCore
diff --git a/WebCore/css/CSSHelper.h b/WebCore/css/CSSHelper.h
index ffd9166..6f2ffca 100644
--- a/WebCore/css/CSSHelper.h
+++ b/WebCore/css/CSSHelper.h
@@ -26,10 +26,6 @@
 
 namespace WebCore {
 
-// Used in many inappropriate contexts throughout WebCore. Most callers should be using
-// stripLeadingAndTrailingHTMLSpaces instead.
-String deprecatedParseURL(const String&);
-
 // We always assume 96 CSS pixels in a CSS inch. This is the cold hard truth of the Web.
 // At high DPI, we may scale a CSS pixel, but the ratio of the CSS pixel to the so-called
 // "absolute" CSS length units like inch and pt is always fixed and never changes.
diff --git a/WebCore/css/CSSParser.cpp b/WebCore/css/CSSParser.cpp
index 90bb494..6c2110f 100644
--- a/WebCore/css/CSSParser.cpp
+++ b/WebCore/css/CSSParser.cpp
@@ -30,7 +30,6 @@
 #include "CSSCanvasValue.h"
 #include "CSSCharsetRule.h"
 #include "CSSCursorImageValue.h"
-#include "CSSHelper.h"
 #include "CSSImageValue.h"
 #include "CSSFontFaceRule.h"
 #include "CSSFontFaceSrcValue.h"
@@ -3760,6 +3759,8 @@ bool CSSParser::parseFontFaceUnicodeRange()
     return true;
 }
 
+// FIXME: This is the same as isHTMLSpace, so I think we should eliminate this function
+// and use that instead. Pedants who say CSS is not HTML need not apply.
 static inline bool isCSSWhitespace(UChar c)
 {
     return c == ' ' || c == '\t' || c == '\r' || c == '\n' || c == '\f';
diff --git a/WebCore/dom/Document.cpp b/WebCore/dom/Document.cpp
index 9a923f4..a113d88 100644
--- a/WebCore/dom/Document.cpp
+++ b/WebCore/dom/Document.cpp
@@ -32,7 +32,6 @@
 #include "Attr.h"
 #include "Attribute.h"
 #include "CDATASection.h"
-#include "CSSHelper.h"
 #include "CSSStyleSelector.h"
 #include "CSSStyleSheet.h"
 #include "CSSValueKeywords.h"
@@ -81,6 +80,7 @@
 #include "HTMLMapElement.h"
 #include "HTMLNameCollection.h"
 #include "HTMLNames.h"
+#include "HTMLParserIdioms.h"
 #include "HTMLStyleElement.h"
 #include "HTMLTitleElement.h"
 #include "HTTPParsers.h"
@@ -2240,7 +2240,7 @@ void Document::processBaseElement()
     // FIXME: Since this doesn't share code with completeURL it may not handle encodings correctly.
     KURL baseElementURL;
     if (href) {
-        String strippedHref = deprecatedParseURL(*href);
+        String strippedHref = stripLeadingAndTrailingHTMLSpaces(*href);
         if (!strippedHref.isEmpty() && (!frame() || frame()->script()->xssAuditor()->canSetBaseElementURL(*href)))
             baseElementURL = KURL(url(), strippedHref);
     }
diff --git a/WebCore/dom/Element.cpp b/WebCore/dom/Element.cpp
index ff030ba..60a1063 100644
--- a/WebCore/dom/Element.cpp
+++ b/WebCore/dom/Element.cpp
@@ -44,6 +44,7 @@
 #include "FrameView.h"
 #include "HTMLElement.h"
 #include "HTMLNames.h"
+#include "HTMLParserIdioms.h"
 #include "InspectorInstrumentation.h"
 #include "NodeList.h"
 #include "NodeRenderStyle.h"
@@ -680,7 +681,7 @@ static bool isEventHandlerAttribute(const QualifiedName& name)
 
 static bool isAttributeToRemove(const QualifiedName& name, const AtomicString& value)
 {    
-    return (name.localName().endsWith(hrefAttr.localName()) || name == srcAttr || name == actionAttr) && protocolIsJavaScript(deprecatedParseURL(value));       
+    return (name.localName().endsWith(hrefAttr.localName()) || name == srcAttr || name == actionAttr) && protocolIsJavaScript(stripLeadingAndTrailingHTMLSpaces(value));       
 }
 
 void Element::setAttributeMap(PassRefPtr<NamedNodeMap> list, FragmentScriptingPermission scriptingPermission)
@@ -1612,7 +1613,7 @@ KURL Element::getURLAttribute(const QualifiedName& name) const
             ASSERT(isURLAttribute(attribute));
     }
 #endif
-    return document()->completeURL(deprecatedParseURL(getAttribute(name)));
+    return document()->completeURL(stripLeadingAndTrailingHTMLSpaces(getAttribute(name)));
 }
 
 KURL Element::getNonEmptyURLAttribute(const QualifiedName& name) const
@@ -1623,7 +1624,7 @@ KURL Element::getNonEmptyURLAttribute(const QualifiedName& name) const
             ASSERT(isURLAttribute(attribute));
     }
 #endif
-    String value = deprecatedParseURL(getAttribute(name));
+    String value = stripLeadingAndTrailingHTMLSpaces(getAttribute(name));
     if (value.isEmpty())
         return KURL();
     return document()->completeURL(value);
diff --git a/WebCore/html/HTMLAnchorElement.cpp b/WebCore/html/HTMLAnchorElement.cpp
index 8beccc2..2274f65 100644
--- a/WebCore/html/HTMLAnchorElement.cpp
+++ b/WebCore/html/HTMLAnchorElement.cpp
@@ -30,6 +30,7 @@
 #include "FrameLoaderTypes.h"
 #include "HTMLImageElement.h"
 #include "HTMLNames.h"
+#include "HTMLParserIdioms.h"
 #include "KeyboardEvent.h"
 #include "MouseEvent.h"
 #include "Page.h"
@@ -145,7 +146,7 @@ void HTMLAnchorElement::defaultEventHandler(Event* event)
         }
 
         if (isLinkClick(event) && treatLinkAsLiveForEventType(eventType(event))) {
-            String url = deprecatedParseURL(getAttribute(hrefAttr));
+            String url = stripLeadingAndTrailingHTMLSpaces(getAttribute(hrefAttr));
             appendServerMapMousePosition(url, event);
             handleLinkClick(event, document(), url, getAttribute(targetAttr), hasRel(RelationNoReferrer));
             sendPings(document()->completeURL(url));
@@ -210,7 +211,7 @@ void HTMLAnchorElement::parseMappedAttribute(Attribute* attr)
         if (wasLink != isLink())
             setNeedsStyleRecalc();
         if (isLink()) {
-            String parsedURL = deprecatedParseURL(attr->value());
+            String parsedURL = stripLeadingAndTrailingHTMLSpaces(attr->value());
             if (document()->isDNSPrefetchEnabled()) {
                 if (protocolIs(parsedURL, "http") || protocolIs(parsedURL, "https") || parsedURL.startsWith("//"))
                     ResourceHandle::prepareForURL(document()->completeURL(parsedURL));
@@ -261,7 +262,7 @@ bool HTMLAnchorElement::draggable() const
 
 KURL HTMLAnchorElement::href() const
 {
-    return document()->completeURL(deprecatedParseURL(getAttribute(hrefAttr)));
+    return document()->completeURL(stripLeadingAndTrailingHTMLSpaces(getAttribute(hrefAttr)));
 }
 
 void HTMLAnchorElement::setHref(const AtomicString& value)
diff --git a/WebCore/html/HTMLBodyElement.cpp b/WebCore/html/HTMLBodyElement.cpp
index 96132f3..3415eee 100644
--- a/WebCore/html/HTMLBodyElement.cpp
+++ b/WebCore/html/HTMLBodyElement.cpp
@@ -33,6 +33,7 @@
 #include "FrameView.h"
 #include "HTMLFrameElementBase.h"
 #include "HTMLNames.h"
+#include "HTMLParserIdioms.h"
 #include "ScriptEventListener.h"
 
 namespace WebCore {
@@ -95,7 +96,7 @@ bool HTMLBodyElement::mapToEntry(const QualifiedName& attrName, MappedAttributeE
 void HTMLBodyElement::parseMappedAttribute(Attribute* attr)
 {
     if (attr->name() == backgroundAttr) {
-        String url = deprecatedParseURL(attr->value());
+        String url = stripLeadingAndTrailingHTMLSpaces(attr->value());
         if (!url.isEmpty())
             addCSSImageProperty(attr, CSSPropertyBackgroundImage, document()->completeURL(url).string());
     } else if (attr->name() == marginwidthAttr || attr->name() == leftmarginAttr) {
diff --git a/WebCore/html/HTMLEmbedElement.cpp b/WebCore/html/HTMLEmbedElement.cpp
index 74df57d..70c60df 100644
--- a/WebCore/html/HTMLEmbedElement.cpp
+++ b/WebCore/html/HTMLEmbedElement.cpp
@@ -25,7 +25,6 @@
 #include "HTMLEmbedElement.h"
 
 #include "Attribute.h"
-#include "CSSHelper.h"
 #include "CSSPropertyNames.h"
 #include "DocumentLoader.h"
 #include "Frame.h"
@@ -33,6 +32,7 @@
 #include "HTMLImageLoader.h"
 #include "HTMLNames.h"
 #include "HTMLObjectElement.h"
+#include "HTMLParserIdioms.h"
 #include "MainResourceLoader.h"
 #include "PluginDocument.h"
 #include "RenderEmbeddedObject.h"
@@ -97,9 +97,9 @@ void HTMLEmbedElement::parseMappedAttribute(Attribute* attr)
         if (!isImageType() && m_imageLoader)
             m_imageLoader.clear();
     } else if (attr->name() == codeAttr)
-        m_url = deprecatedParseURL(value.string());
+        m_url = stripLeadingAndTrailingHTMLSpaces(value.string());
     else if (attr->name() == srcAttr) {
-        m_url = deprecatedParseURL(value.string());
+        m_url = stripLeadingAndTrailingHTMLSpaces(value.string());
         if (renderer() && isImageType()) {
             if (!m_imageLoader)
                 m_imageLoader = adoptPtr(new HTMLImageLoader(this));
diff --git a/WebCore/html/HTMLFrameElementBase.cpp b/WebCore/html/HTMLFrameElementBase.cpp
index 8cca465..f8d682c 100644
--- a/WebCore/html/HTMLFrameElementBase.cpp
+++ b/WebCore/html/HTMLFrameElementBase.cpp
@@ -25,7 +25,6 @@
 #include "HTMLFrameElementBase.h"
 
 #include "Attribute.h"
-#include "CSSHelper.h"
 #include "Document.h"
 #include "EventNames.h"
 #include "FocusController.h"
@@ -35,6 +34,7 @@
 #include "FrameView.h"
 #include "HTMLFrameSetElement.h"
 #include "HTMLNames.h"
+#include "HTMLParserIdioms.h"
 #include "KURL.h"
 #include "Page.h"
 #include "RenderEmbeddedObject.h"
@@ -112,7 +112,7 @@ void HTMLFrameElementBase::openURL(bool lockHistory, bool lockBackForwardList)
 void HTMLFrameElementBase::parseMappedAttribute(Attribute* attr)
 {
     if (attr->name() == srcAttr)
-        setLocation(deprecatedParseURL(attr->value()));
+        setLocation(stripLeadingAndTrailingHTMLSpaces(attr->value()));
     else if (isIdAttributeName(attr->name())) {
         // Important to call through to base for the id attribute so the hasID bit gets set.
         HTMLFrameOwnerElement::parseMappedAttribute(attr);
diff --git a/WebCore/html/HTMLImageElement.cpp b/WebCore/html/HTMLImageElement.cpp
index 29ea592..ad08ae9 100644
--- a/WebCore/html/HTMLImageElement.cpp
+++ b/WebCore/html/HTMLImageElement.cpp
@@ -24,7 +24,6 @@
 #include "HTMLImageElement.h"
 
 #include "Attribute.h"
-#include "CSSHelper.h"
 #include "CSSPropertyNames.h"
 #include "CSSValueKeywords.h"
 #include "EventNames.h"
@@ -32,6 +31,7 @@
 #include "HTMLDocument.h"
 #include "HTMLFormElement.h"
 #include "HTMLNames.h"
+#include "HTMLParserIdioms.h"
 #include "RenderImage.h"
 #include "ScriptEventListener.h"
 
@@ -131,7 +131,7 @@ void HTMLImageElement::parseMappedAttribute(Attribute* attr)
         if (attr->value().string()[0] == '#')
             usemap = attr->value();
         else
-            usemap = document()->completeURL(deprecatedParseURL(attr->value())).string();
+            usemap = document()->completeURL(stripLeadingAndTrailingHTMLSpaces(attr->value())).string();
         setIsLink(!attr->isNull());
     } else if (attrName == ismapAttr)
         ismap = true;
diff --git a/WebCore/html/HTMLImageLoader.cpp b/WebCore/html/HTMLImageLoader.cpp
index 6e31d9b..f620542 100644
--- a/WebCore/html/HTMLImageLoader.cpp
+++ b/WebCore/html/HTMLImageLoader.cpp
@@ -22,13 +22,13 @@
 #include "config.h"
 #include "HTMLImageLoader.h"
 
-#include "CSSHelper.h"
 #include "CachedImage.h"
 #include "Element.h"
 #include "Event.h"
 #include "EventNames.h"
 #include "HTMLNames.h"
 #include "HTMLObjectElement.h"
+#include "HTMLParserIdioms.h"
 
 #if USE(JSC)
 #include "JSDOMWindowBase.h"
@@ -55,7 +55,7 @@ void HTMLImageLoader::dispatchLoadEvent()
 
 String HTMLImageLoader::sourceURI(const AtomicString& attr) const
 {
-    return deprecatedParseURL(attr);
+    return stripLeadingAndTrailingHTMLSpaces(attr);
 }
 
 void HTMLImageLoader::notifyFinished(CachedResource*)
diff --git a/WebCore/html/HTMLLinkElement.cpp b/WebCore/html/HTMLLinkElement.cpp
index a372b9c..f826454 100644
--- a/WebCore/html/HTMLLinkElement.cpp
+++ b/WebCore/html/HTMLLinkElement.cpp
@@ -25,7 +25,6 @@
 #include "HTMLLinkElement.h"
 
 #include "Attribute.h"
-#include "CSSHelper.h"
 #include "CachedCSSStyleSheet.h"
 #include "CachedResourceLoader.h"
 #include "Document.h"
@@ -34,6 +33,7 @@
 #include "FrameLoaderClient.h"
 #include "FrameTree.h"
 #include "HTMLNames.h"
+#include "HTMLParserIdioms.h"
 #include "MediaList.h"
 #include "MediaQueryEvaluator.h"
 #include "Page.h"
@@ -118,7 +118,7 @@ void HTMLLinkElement::parseMappedAttribute(Attribute* attr)
         tokenizeRelAttribute(attr->value(), m_relAttribute);
         process();
     } else if (attr->name() == hrefAttr) {
-        m_url = document()->completeURL(deprecatedParseURL(attr->value()));
+        m_url = document()->completeURL(stripLeadingAndTrailingHTMLSpaces(attr->value()));
         process();
     } else if (attr->name() == typeAttr) {
         m_type = attr->value();
diff --git a/WebCore/html/HTMLMediaElement.cpp b/WebCore/html/HTMLMediaElement.cpp
index 00f448c..cd44ee1 100644
--- a/WebCore/html/HTMLMediaElement.cpp
+++ b/WebCore/html/HTMLMediaElement.cpp
@@ -34,7 +34,6 @@
 #include "ClientRect.h"
 #include "ClientRectList.h"
 #include "ContentType.h"
-#include "CSSHelper.h"
 #include "CSSPropertyNames.h"
 #include "CSSValueKeywords.h"
 #include "Event.h"
diff --git a/WebCore/html/HTMLObjectElement.cpp b/WebCore/html/HTMLObjectElement.cpp
index e9c6f60..e303b52 100644
--- a/WebCore/html/HTMLObjectElement.cpp
+++ b/WebCore/html/HTMLObjectElement.cpp
@@ -25,7 +25,6 @@
 #include "HTMLObjectElement.h"
 
 #include "Attribute.h"
-#include "CSSHelper.h"
 #include "EventNames.h"
 #include "ExceptionCode.h"
 #include "Frame.h"
@@ -34,6 +33,7 @@
 #include "HTMLImageLoader.h"
 #include "HTMLNames.h"
 #include "HTMLParamElement.h"
+#include "HTMLParserIdioms.h"
 #include "MIMETypeRegistry.h"
 #include "RenderEmbeddedObject.h"
 #include "RenderImage.h"
@@ -77,7 +77,7 @@ void HTMLObjectElement::parseMappedAttribute(Attribute* attr)
         if (!isImageType() && m_imageLoader)
             m_imageLoader.clear();
     } else if (attr->name() == dataAttr) {
-        m_url = deprecatedParseURL(attr->value());
+        m_url = stripLeadingAndTrailingHTMLSpaces(attr->value());
         if (renderer()) {
             setNeedsWidgetUpdate(true);
             if (isImageType()) {
@@ -182,7 +182,7 @@ void HTMLObjectElement::parametersForPlugin(Vector<String>& paramNames, Vector<S
 
         // FIXME: url adjustment does not belong in this function.
         if (url.isEmpty() && urlParameter.isEmpty() && (equalIgnoringCase(name, "src") || equalIgnoringCase(name, "movie") || equalIgnoringCase(name, "code") || equalIgnoringCase(name, "url")))
-            urlParameter = deprecatedParseURL(p->value());
+            urlParameter = stripLeadingAndTrailingHTMLSpaces(p->value());
         // FIXME: serviceType calculation does not belong in this function.
         if (serviceType.isEmpty() && equalIgnoringCase(name, "type")) {
             serviceType = p->value();
diff --git a/WebCore/html/HTMLTableElement.cpp b/WebCore/html/HTMLTableElement.cpp
index ef29bf6..74e06d1 100644
--- a/WebCore/html/HTMLTableElement.cpp
+++ b/WebCore/html/HTMLTableElement.cpp
@@ -31,6 +31,7 @@
 #include "CSSValueKeywords.h"
 #include "ExceptionCode.h"
 #include "HTMLNames.h"
+#include "HTMLParserIdioms.h"
 #include "HTMLTableCaptionElement.h"
 #include "HTMLTableRowElement.h"
 #include "HTMLTableRowsCollection.h"
@@ -336,7 +337,7 @@ void HTMLTableElement::parseMappedAttribute(Attribute* attr)
             m_borderColorAttr = true;
         }
     } else if (attr->name() == backgroundAttr) {
-        String url = deprecatedParseURL(attr->value());
+        String url = stripLeadingAndTrailingHTMLSpaces(attr->value());
         if (!url.isEmpty())
             addCSSImageProperty(attr, CSSPropertyBackgroundImage, document()->completeURL(url).string());
     } else if (attr->name() == frameAttr) {
diff --git a/WebCore/html/HTMLTablePartElement.cpp b/WebCore/html/HTMLTablePartElement.cpp
index 316ace4..dfaecca 100644
--- a/WebCore/html/HTMLTablePartElement.cpp
+++ b/WebCore/html/HTMLTablePartElement.cpp
@@ -26,11 +26,11 @@
 #include "HTMLTablePartElement.h"
 
 #include "Attribute.h"
-#include "CSSHelper.h"
 #include "CSSPropertyNames.h"
 #include "CSSValueKeywords.h"
 #include "Document.h"
 #include "HTMLNames.h"
+#include "HTMLParserIdioms.h"
 
 namespace WebCore {
 
@@ -64,7 +64,7 @@ void HTMLTablePartElement::parseMappedAttribute(Attribute* attr)
     if (attr->name() == bgcolorAttr)
         addCSSColor(attr, CSSPropertyBackgroundColor, attr->value());
     else if (attr->name() == backgroundAttr) {
-        String url = deprecatedParseURL(attr->value());
+        String url = stripLeadingAndTrailingHTMLSpaces(attr->value());
         if (!url.isEmpty())
             addCSSImageProperty(attr, CSSPropertyBackgroundImage, document()->completeURL(url).string());
     } else if (attr->name() == bordercolorAttr) {
diff --git a/WebCore/html/HTMLVideoElement.cpp b/WebCore/html/HTMLVideoElement.cpp
index 219bb85..bbda53a 100644
--- a/WebCore/html/HTMLVideoElement.cpp
+++ b/WebCore/html/HTMLVideoElement.cpp
@@ -29,7 +29,6 @@
 #include "HTMLVideoElement.h"
 
 #include "Attribute.h"
-#include "CSSHelper.h"
 #include "CSSPropertyNames.h"
 #include "Chrome.h"
 #include "ChromeClient.h"
diff --git a/WebCore/html/parser/CSSPreloadScanner.cpp b/WebCore/html/parser/CSSPreloadScanner.cpp
index 6ac923d..23364f9 100644
--- a/WebCore/html/parser/CSSPreloadScanner.cpp
+++ b/WebCore/html/parser/CSSPreloadScanner.cpp
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2008 Apple Inc. All Rights Reserved.
+ * Copyright (C) 2008, 2010 Apple Inc. All Rights Reserved.
  * Copyright (C) 2009 Torch Mobile, Inc. http://www.torchmobile.com/
  * Copyright (C) 2010 Google Inc. All Rights Reserved.
  *
@@ -28,23 +28,18 @@
 #include "config.h"
 #include "CSSPreloadScanner.h"
 
-#include "CSSHelper.h"
 #include "CachedCSSStyleSheet.h"
 #include "CachedResourceLoader.h"
 #include "Document.h"
+#include "HTMLParserIdioms.h"
 #include "HTMLToken.h"
 
 namespace WebCore {
 
-static inline bool isWhitespace(UChar c)
-{
-    return c == ' ' || c == '\n' || c == '\r' || c == '\t';
-}
-
 CSSPreloadScanner::CSSPreloadScanner(Document* document)
-    : m_document(document)
+    : m_state(Initial)
+    , m_document(document)
 {
-    reset();
 }
 
 void CSSPreloadScanner::reset()
@@ -59,10 +54,8 @@ void CSSPreloadScanner::scan(const HTMLToken& token, bool scanningBody)
     m_scanningBody = scanningBody;
 
     const HTMLToken::DataVector& characters = token.characters();
-    for (HTMLToken::DataVector::const_iterator iter = characters.begin();
-         iter != characters.end(); ++iter) {
+    for (HTMLToken::DataVector::const_iterator iter = characters.begin(); iter != characters.end(); ++iter)
         tokenize(*iter);
-    }
 }
 
 inline void CSSPreloadScanner::tokenize(UChar c)
@@ -104,7 +97,7 @@ inline void CSSPreloadScanner::tokenize(UChar c)
             m_state = Initial;
         break;
     case Rule:
-        if (isWhitespace(c))
+        if (isHTMLSpace(c))
             m_state = AfterRule;
         else if (c == ';')
             m_state = Initial;
@@ -112,7 +105,7 @@ inline void CSSPreloadScanner::tokenize(UChar c)
             m_rule.append(c);
         break;
     case AfterRule:
-        if (isWhitespace(c))
+        if (isHTMLSpace(c))
             ;
         else if (c == ';')
             m_state = Initial;
@@ -122,7 +115,7 @@ inline void CSSPreloadScanner::tokenize(UChar c)
         }
         break;
     case RuleValue:
-        if (isWhitespace(c))
+        if (isHTMLSpace(c))
             m_state = AfterRuleValue;
         else if (c == ';') {
             emitRule();
@@ -131,7 +124,7 @@ inline void CSSPreloadScanner::tokenize(UChar c)
             m_ruleValue.append(c);
         break;
     case AfterRuleValue:
-        if (isWhitespace(c))
+        if (isHTMLSpace(c))
             ;
         else if (c == ';') {
             emitRule();
@@ -144,14 +137,56 @@ inline void CSSPreloadScanner::tokenize(UChar c)
     }
 }
 
+static String parseCSSStringOrURL(const UChar* characters, size_t length)
+{
+    size_t offset = 0;
+    size_t reducedLength = length;
+
+    while (reducedLength && isHTMLSpace(characters[offset])) {
+        ++offset;
+        --reducedLength;
+    }
+    while (reducedLength && isHTMLSpace(characters[offset + reducedLength - 1]))
+        --reducedLength;
+
+    if (reducedLength >= 5
+            && (characters[offset] == 'u' || characters[offset] == 'U')
+            && (characters[offset + 1] == 'r' || characters[offset + 1] == 'R')
+            && (characters[offset + 2] == 'l' || characters[offset + 2] == 'L')
+            && characters[offset + 3] == '('
+            && characters[offset + reducedLength - 1] == ')') {
+        offset += 4;
+        reducedLength -= 5;
+    }
+
+    while (reducedLength && isHTMLSpace(characters[offset])) {
+        ++offset;
+        --reducedLength;
+    }
+    while (reducedLength && isHTMLSpace(characters[offset + reducedLength - 1]))
+        --reducedLength;
+
+    if (reducedLength < 2 || characters[offset] != characters[offset + reducedLength - 1] || !(characters[offset] == '\'' || characters[offset] == '"'))
+        return String();
+    offset++;
+    reducedLength -= 2;
+
+    while (reducedLength && isHTMLSpace(characters[offset])) {
+        ++offset;
+        --reducedLength;
+    }
+    while (reducedLength && isHTMLSpace(characters[offset + reducedLength - 1]))
+        --reducedLength;
+
+    return String(characters + offset, reducedLength);
+}
+
 void CSSPreloadScanner::emitRule()
 {
-    String rule(m_rule.data(), m_rule.size());
-    if (equalIgnoringCase(rule, "import") && !m_ruleValue.isEmpty()) {
-        String value(m_ruleValue.data(), m_ruleValue.size());
-        String url = deprecatedParseURL(value);
-        if (!url.isEmpty())
-            m_document->cachedResourceLoader()->preload(CachedResource::CSSStyleSheet, url, String(), m_scanningBody);
+    if (equalIgnoringCase("import", m_rule.data(), m_rule.size())) {
+        String value = parseCSSStringOrURL(m_ruleValue.data(), m_ruleValue.size());
+        if (!value.isEmpty())
+            m_document->cachedResourceLoader()->preload(CachedResource::CSSStyleSheet, value, String(), m_scanningBody);
     }
     m_rule.clear();
     m_ruleValue.clear();
diff --git a/WebCore/html/parser/HTMLParserIdioms.cpp b/WebCore/html/parser/HTMLParserIdioms.cpp
index a558cf5..f093eb2 100644
--- a/WebCore/html/parser/HTMLParserIdioms.cpp
+++ b/WebCore/html/parser/HTMLParserIdioms.cpp
@@ -43,7 +43,7 @@ String stripLeadingAndTrailingHTMLSpaces(const String& string)
     }
 
     if (numLeadingSpaces == length)
-        return emptyAtom;
+        return string.isNull() ? string : emptyAtom.string();
 
     unsigned numTrailingSpaces;
     for (numTrailingSpaces = 0; numTrailingSpaces < length; ++numTrailingSpaces) {
@@ -53,7 +53,7 @@ String stripLeadingAndTrailingHTMLSpaces(const String& string)
 
     ASSERT(numLeadingSpaces + numTrailingSpaces < length);
 
-    return string.substring(numLeadingSpaces, length - numTrailingSpaces);
+    return string.substring(numLeadingSpaces, length - (numLeadingSpaces + numTrailingSpaces));
 }
 
 String serializeForNumberType(double number)
diff --git a/WebCore/html/parser/HTMLPreloadScanner.cpp b/WebCore/html/parser/HTMLPreloadScanner.cpp
index 7859dd8..5c86579 100644
--- a/WebCore/html/parser/HTMLPreloadScanner.cpp
+++ b/WebCore/html/parser/HTMLPreloadScanner.cpp
@@ -28,13 +28,13 @@
 #include "config.h"
 #include "HTMLPreloadScanner.h"
 
-#include "CSSHelper.h"
 #include "CachedResourceLoader.h"
 #include "Document.h"
 #include "HTMLDocumentParser.h"
 #include "HTMLTokenizer.h"
 #include "HTMLLinkElement.h"
 #include "HTMLNames.h"
+#include "HTMLParserIdioms.h"
 
 namespace WebCore {
 
@@ -90,7 +90,7 @@ public:
         // http://www.whatwg.org/specs/web-apps/current-work/multipage/tokenization.html#attribute-name-state
         if (!m_urlToLoad.isEmpty())
             return;
-        m_urlToLoad = deprecatedParseURL(attributeValue);
+        m_urlToLoad = stripLeadingAndTrailingHTMLSpaces(attributeValue);
     }
 
     void preload(Document* document, bool scanningBody)
diff --git a/WebCore/loader/FormSubmission.cpp b/WebCore/loader/FormSubmission.cpp
index 98a545e..f3f19d2 100644
--- a/WebCore/loader/FormSubmission.cpp
+++ b/WebCore/loader/FormSubmission.cpp
@@ -31,7 +31,6 @@
 #include "config.h"
 #include "FormSubmission.h"
 
-#include "CSSHelper.h"
 #include "DOMFormData.h"
 #include "Document.h"
 #include "Event.h"
@@ -45,6 +44,7 @@
 #include "HTMLFormElement.h"
 #include "HTMLInputElement.h"
 #include "HTMLNames.h"
+#include "HTMLParserIdioms.h"
 #include "TextEncoding.h"
 #include <wtf/CurrentTime.h>
 #include <wtf/RandomNumber.h>
@@ -85,7 +85,7 @@ static void appendMailtoPostFormDataToURL(KURL& url, const FormData& data, const
 void FormSubmission::Attributes::parseAction(const String& action)
 {
     // FIXME: Can we parse into a KURL?
-    m_action = deprecatedParseURL(action);
+    m_action = stripLeadingAndTrailingHTMLSpaces(action);
 }
 
 void FormSubmission::Attributes::parseEncodingType(const String& type)
diff --git a/WebCore/loader/ImageLoader.cpp b/WebCore/loader/ImageLoader.cpp
index f6bc8d0..94a21a4 100644
--- a/WebCore/loader/ImageLoader.cpp
+++ b/WebCore/loader/ImageLoader.cpp
@@ -22,7 +22,6 @@
 #include "config.h"
 #include "ImageLoader.h"
 
-#include "CSSHelper.h"
 #include "CachedImage.h"
 #include "CachedResourceLoader.h"
 #include "Document.h"
diff --git a/WebCore/platform/chromium/ClipboardChromium.cpp b/WebCore/platform/chromium/ClipboardChromium.cpp
index 6645a8f..c1b34da 100644
--- a/WebCore/platform/chromium/ClipboardChromium.cpp
+++ b/WebCore/platform/chromium/ClipboardChromium.cpp
@@ -37,6 +37,7 @@
 #include "FileList.h"
 #include "Frame.h"
 #include "HTMLNames.h"
+#include "HTMLParserIdioms.h"
 #include "Image.h"
 #include "MIMETypeRegistry.h"
 #include "NamedNodeMap.h"
@@ -275,7 +276,7 @@ void ClipboardChromium::declareAndWriteDragImage(Element* element, const KURL& u
     if (imageURL.isEmpty())
         return;
 
-    String fullURL = frame->document()->completeURL(deprecatedParseURL(imageURL));
+    String fullURL = frame->document()->completeURL(stripLeadingAndTrailingHTMLSpaces(imageURL));
     if (fullURL.isEmpty())
         return;
 
diff --git a/WebCore/platform/chromium/PasteboardChromium.cpp b/WebCore/platform/chromium/PasteboardChromium.cpp
index ba69b00..907a4b9 100644
--- a/WebCore/platform/chromium/PasteboardChromium.cpp
+++ b/WebCore/platform/chromium/PasteboardChromium.cpp
@@ -38,6 +38,7 @@
 #include "Element.h"
 #include "Frame.h"
 #include "HTMLNames.h"
+#include "HTMLParserIdioms.h"
 #include "Image.h"
 #include "KURL.h"
 #include "markup.h"
@@ -147,7 +148,7 @@ void Pasteboard::writeImage(Node* node, const KURL&, const String& title)
         Element* element = static_cast<Element*>(node);
         urlString = element->getAttribute(element->imageSourceAttributeName());
     }
-    KURL url = urlString.isEmpty() ? KURL() : node->document()->completeURL(deprecatedParseURL(urlString));
+    KURL url = urlString.isEmpty() ? KURL() : node->document()->completeURL(stripLeadingAndTrailingHTMLSpaces(urlString));
 
     ChromiumBridge::clipboardWriteImage(bitmap, url, title);
 }
diff --git a/WebCore/platform/qt/ClipboardQt.cpp b/WebCore/platform/qt/ClipboardQt.cpp
index 90e3bfe..20cf62b 100644
--- a/WebCore/platform/qt/ClipboardQt.cpp
+++ b/WebCore/platform/qt/ClipboardQt.cpp
@@ -28,7 +28,6 @@
 #include "config.h"
 #include "ClipboardQt.h"
 
-#include "CSSHelper.h"
 #include "CachedImage.h"
 #include "Document.h"
 #include "DragData.h"
@@ -36,6 +35,7 @@
 #include "FileList.h"
 #include "Frame.h"
 #include "HTMLNames.h"
+#include "HTMLParserIdioms.h"
 #include "Image.h"
 #include "IntPoint.h"
 #include "KURL.h"
@@ -276,7 +276,7 @@ void ClipboardQt::declareAndWriteDragImage(Element* element, const KURL& url, co
     if (imageURL.isEmpty())
         return;
 
-    KURL fullURL = frame->document()->completeURL(deprecatedParseURL(imageURL));
+    KURL fullURL = frame->document()->completeURL(stripLeadingAndTrailingHTMLSpaces(imageURL));
     if (fullURL.isEmpty())
         return;
 
diff --git a/WebCore/platform/win/ClipboardWin.cpp b/WebCore/platform/win/ClipboardWin.cpp
index 529963f..7a54737 100644
--- a/WebCore/platform/win/ClipboardWin.cpp
+++ b/WebCore/platform/win/ClipboardWin.cpp
@@ -38,6 +38,7 @@
 #include "FrameLoader.h"
 #include "FrameView.h"
 #include "HTMLNames.h"
+#include "HTMLParserIdioms.h"
 #include "Image.h"
 #include "MIMETypeRegistry.h"
 #include "NotImplemented.h"
@@ -50,7 +51,6 @@
 #include "ResourceResponse.h"
 #include "SharedBuffer.h"
 #include "WCDataObject.h"
-#include "csshelper.h"
 #include "markup.h"
 #include <shlwapi.h>
 #include <wininet.h>
@@ -723,7 +723,7 @@ void ClipboardWin::declareAndWriteDragImage(Element* element, const KURL& url, c
     if (imageURL.isEmpty()) 
         return;
 
-    String fullURL = frame->document()->completeURL(deprecatedParseURL(imageURL)).string();
+    String fullURL = frame->document()->completeURL(stripLeadingAndTrailingHTMLSpaces(imageURL)).string();
     if (fullURL.isEmpty()) 
         return;
     STGMEDIUM medium = {0};
diff --git a/WebCore/rendering/HitTestResult.cpp b/WebCore/rendering/HitTestResult.cpp
index 35a6d23..301c0fb 100644
--- a/WebCore/rendering/HitTestResult.cpp
+++ b/WebCore/rendering/HitTestResult.cpp
@@ -29,6 +29,7 @@
 #include "HTMLInputElement.h"
 #include "HTMLMediaElement.h"
 #include "HTMLNames.h"
+#include "HTMLParserIdioms.h"
 #include "RenderImage.h"
 #include "Scrollbar.h"
 #include "SelectionController.h"
@@ -305,14 +306,14 @@ KURL HitTestResult::absoluteImageURL() const
     } else
         return KURL();
 
-    return m_innerNonSharedNode->document()->completeURL(deprecatedParseURL(urlString));
+    return m_innerNonSharedNode->document()->completeURL(stripLeadingAndTrailingHTMLSpaces(urlString));
 }
 
 KURL HitTestResult::absoluteMediaURL() const
 {
 #if ENABLE(VIDEO)
     if (HTMLMediaElement* mediaElt = mediaElement())
-        return m_innerNonSharedNode->document()->completeURL(deprecatedParseURL(mediaElt->currentSrc()));
+        return m_innerNonSharedNode->document()->completeURL(stripLeadingAndTrailingHTMLSpaces(mediaElt->currentSrc()));
     return KURL();
 #else
     return KURL();
@@ -461,7 +462,7 @@ KURL HitTestResult::absoluteLinkURL() const
     else
         return KURL();
 
-    return m_innerURLElement->document()->completeURL(deprecatedParseURL(urlString));
+    return m_innerURLElement->document()->completeURL(stripLeadingAndTrailingHTMLSpaces(urlString));
 }
 
 bool HitTestResult::isLiveLink() const
diff --git a/WebCore/rendering/style/RenderStyle.h b/WebCore/rendering/style/RenderStyle.h
index d62cbb7..889d3b8 100644
--- a/WebCore/rendering/style/RenderStyle.h
+++ b/WebCore/rendering/style/RenderStyle.h
@@ -29,7 +29,6 @@
 #include "AnimationList.h"
 #include "BorderData.h"
 #include "BorderValue.h"
-#include "CSSHelper.h"
 #include "CSSImageGeneratorValue.h"
 #include "CSSPrimitiveValue.h"
 #include "CSSPropertyNames.h"
diff --git a/WebCore/svg/SVGAElement.cpp b/WebCore/svg/SVGAElement.cpp
index d711a52..56078ad 100644
--- a/WebCore/svg/SVGAElement.cpp
+++ b/WebCore/svg/SVGAElement.cpp
@@ -27,7 +27,6 @@
 
 #include "Attr.h"
 #include "Attribute.h"
-#include "CSSHelper.h"
 #include "Document.h"
 #include "EventHandler.h"
 #include "EventNames.h"
@@ -35,6 +34,7 @@
 #include "FrameLoader.h"
 #include "FrameLoaderTypes.h"
 #include "HTMLAnchorElement.h"
+#include "HTMLParserIdioms.h"
 #include "KeyboardEvent.h"
 #include "MouseEvent.h"
 #include "PlatformMouseEvent.h"
@@ -137,7 +137,7 @@ void SVGAElement::defaultEventHandler(Event* event)
         }
 
         if (isLinkClick(event)) {
-            String url = deprecatedParseURL(href());
+            String url = stripLeadingAndTrailingHTMLSpaces(href());
 
 #if ENABLE(SVG_ANIMATION)
             if (url[0] == '#') {
diff --git a/WebCore/svg/SVGImageLoader.cpp b/WebCore/svg/SVGImageLoader.cpp
index 2079f74..8f1c1b5 100644
--- a/WebCore/svg/SVGImageLoader.cpp
+++ b/WebCore/svg/SVGImageLoader.cpp
@@ -25,6 +25,7 @@
 
 #include "Event.h"
 #include "EventNames.h"
+#include "HTMLParserIdioms.h"
 #include "SVGImageElement.h"
 #include "RenderImage.h"
 
@@ -48,7 +49,7 @@ void SVGImageLoader::dispatchLoadEvent()
 
 String SVGImageLoader::sourceURI(const AtomicString& attr) const
 {
-    return KURL(element()->baseURI(), deprecatedParseURL(attr)).string();
+    return KURL(element()->baseURI(), stripLeadingAndTrailingHTMLSpaces(attr)).string();
 }
 
 }
diff --git a/WebCore/wml/WMLAElement.cpp b/WebCore/wml/WMLAElement.cpp
index c60db5e..0849495 100644
--- a/WebCore/wml/WMLAElement.cpp
+++ b/WebCore/wml/WMLAElement.cpp
@@ -128,7 +128,7 @@ void WMLAElement::defaultEventHandler(Event* event)
         }
 
         if (isLinkClick(event)) {
-            handleLinkClick(event, document(), deprecatedParseURL(getAttribute(HTMLNames::hrefAttr)), target(), event);
+            handleLinkClick(event, document(), stripLeadingAndTrailingHTMLSpaces(getAttribute(HTMLNames::hrefAttr)), target(), event);
             return;
         }
     }
diff --git a/WebCore/wml/WMLImageLoader.cpp b/WebCore/wml/WMLImageLoader.cpp
index 1f1054f..1706d24 100644
--- a/WebCore/wml/WMLImageLoader.cpp
+++ b/WebCore/wml/WMLImageLoader.cpp
@@ -24,7 +24,6 @@
 #include "WMLImageLoader.h"
 
 #include "CachedImage.h"
-#include "CSSHelper.h"
 #include "HTMLNames.h"
 #include "WMLImageElement.h"
 #include "WMLNames.h"
@@ -49,7 +48,7 @@ void WMLImageLoader::dispatchLoadEvent()
 
 String WMLImageLoader::sourceURI(const AtomicString& attr) const
 {
-    return KURL(element()->baseURI(), deprecatedParseURL(attr));
+    return KURL(element()->baseURI(), stripLeadingAndTrailingHTMLSpaces(attr));
 }
 
 void WMLImageLoader::notifyFinished(CachedResource* image)
diff --git a/WebKit/mac/ChangeLog b/WebKit/mac/ChangeLog
index e710716..080cf0d 100644
--- a/WebKit/mac/ChangeLog
+++ b/WebKit/mac/ChangeLog
@@ -1,3 +1,16 @@
+2010-09-30  Darin Adler  <darin at apple.com>
+
+        Reviewed by Sam Weinig.
+
+        Remove remaining calls to deprecatedParseURL
+        https://bugs.webkit.org/show_bug.cgi?id=26599
+
+        * DOM/WebDOMOperations.mm:
+        (-[DOMDocument URLWithAttributeString:]):
+        * WebCoreSupport/WebFrameLoaderClient.mm:
+        (WebFrameLoaderClient::createPlugin):
+        Call stripLeadingAndTrailingHTMLSpaces instead of deprecatedParseURL.
+
 2010-09-30  Anders Carlsson  <andersca at apple.com>
 
         Reviewed by Darin Adler.
diff --git a/WebKit/mac/DOM/WebDOMOperations.mm b/WebKit/mac/DOM/WebDOMOperations.mm
index 8166811..5e09308 100644
--- a/WebKit/mac/DOM/WebDOMOperations.mm
+++ b/WebKit/mac/DOM/WebDOMOperations.mm
@@ -38,8 +38,8 @@
 #import "WebFramePrivate.h"
 #import "WebKitNSStringExtras.h"
 #import <JavaScriptCore/APICast.h>
-#import <WebCore/CSSHelper.h>
 #import <WebCore/Document.h>
+#import <WebCore/HTMLParserIdioms.h>
 #import <WebCore/JSElement.h>
 #import <WebCore/LegacyWebArchive.h>
 #import <WebCore/markup.h>
@@ -129,7 +129,7 @@ using namespace JSC;
 
 - (NSURL *)URLWithAttributeString:(NSString *)string
 {
-    return core(self)->completeURL(deprecatedParseURL(string));
+    return core(self)->completeURL(stripLeadingAndTrailingHTMLSpaces(string));
 }
 
 @end
diff --git a/WebKit/mac/WebCoreSupport/WebFrameLoaderClient.mm b/WebKit/mac/WebCoreSupport/WebFrameLoaderClient.mm
index cef552b..5937022 100644
--- a/WebKit/mac/WebCoreSupport/WebFrameLoaderClient.mm
+++ b/WebKit/mac/WebCoreSupport/WebFrameLoaderClient.mm
@@ -94,10 +94,8 @@
 #import <WebCore/HTMLFrameElement.h>
 #import <WebCore/HTMLFrameOwnerElement.h>
 #import <WebCore/HTMLHeadElement.h>
-#if ENABLE(PLUGIN_PROXY_FOR_VIDEO)
-#import <WebCore/HTMLMediaElement.h>
-#endif
 #import <WebCore/HTMLNames.h>
+#import <WebCore/HTMLParserIdioms.h>
 #import <WebCore/HTMLPlugInElement.h>
 #import <WebCore/HistoryItem.h>
 #import <WebCore/HitTestResult.h>
@@ -124,6 +122,10 @@
 #import <wtf/PassRefPtr.h>
 #import <wtf/Threading.h>
 
+#if ENABLE(PLUGIN_PROXY_FOR_VIDEO)
+#import <WebCore/HTMLMediaElement.h>
+#endif
+
 #if ENABLE(JAVA_BRIDGE)
 #import "WebJavaPlugIn.h"
 #endif
@@ -1668,7 +1670,7 @@ PassRefPtr<Widget> WebFrameLoaderClient::createPlugin(const IntSize& size, HTMLP
     if (errorCode && m_webFrame) {
         WebResourceDelegateImplementationCache* implementations = WebViewGetResourceLoadDelegateImplementations(webView);
         if (implementations->plugInFailedWithErrorFunc) {
-            KURL pluginPageURL = document->completeURL(deprecatedParseURL(parameterValue(paramNames, paramValues, "pluginspage")));
+            KURL pluginPageURL = document->completeURL(stripLeadingAndTrailingHTMLSpaces(parameterValue(paramNames, paramValues, "pluginspage")));
             if (!pluginPageURL.protocolInHTTPFamily())
                 pluginPageURL = KURL();
             NSString *pluginName = pluginPackage ? (NSString *)[pluginPackage pluginInfo].name : nil;
diff --git a/WebKit/win/ChangeLog b/WebKit/win/ChangeLog
index 4933b24..94a105b 100644
--- a/WebKit/win/ChangeLog
+++ b/WebKit/win/ChangeLog
@@ -1,3 +1,14 @@
+2010-09-30  Darin Adler  <darin at apple.com>
+
+        Reviewed by Sam Weinig.
+
+        Remove remaining calls to deprecatedParseURL
+        https://bugs.webkit.org/show_bug.cgi?id=26599
+
+        * WebCoreSupport/WebFrameLoaderClient.cpp:
+        (WebFrameLoaderClient::dispatchDidFailToStartPlugin):
+        Call stripLeadingAndTrailingHTMLSpaces instead of deprecatedParseURL.
+
 2010-09-28  Jenn Braithwaite  <jennb at chromium.org>
 
         Reviewed by Dmitry Titov.
diff --git a/WebKit/win/WebCoreSupport/WebFrameLoaderClient.cpp b/WebKit/win/WebCoreSupport/WebFrameLoaderClient.cpp
index 4b05338..4c7800f 100644
--- a/WebKit/win/WebCoreSupport/WebFrameLoaderClient.cpp
+++ b/WebKit/win/WebCoreSupport/WebFrameLoaderClient.cpp
@@ -59,6 +59,7 @@
 #include <WebCore/HTMLFrameElement.h>
 #include <WebCore/HTMLFrameOwnerElement.h>
 #include <WebCore/HTMLNames.h>
+#include <WebCore/HTMLParserIdioms.h>
 #include <WebCore/HTMLPlugInElement.h>
 #include <WebCore/HistoryItem.h>
 #include <WebCore/Page.h>
@@ -768,7 +769,7 @@ void WebFrameLoaderClient::dispatchDidFailToStartPlugin(const PluginView* plugin
     ASSERT(frame == pluginView->parentFrame());
 
     if (!pluginView->pluginsPage().isNull()) {
-        KURL pluginPageURL = frame->document()->completeURL(deprecatedParseURL(pluginView->pluginsPage()));
+        KURL pluginPageURL = frame->document()->completeURL(stripLeadingAndTrailingHTMLSpaces(pluginView->pluginsPage()));
         if (pluginPageURL.protocolInHTTPFamily()) {
             static CFStringRef key = MarshallingHelpers::LPCOLESTRToCFStringRef(WebKitErrorPlugInPageURLStringKey);
             RetainPtr<CFStringRef> str(AdoptCF, pluginPageURL.string().createCFString());

-- 
WebKit Debian packaging



More information about the Pkg-webkit-commits mailing list