Title: [205677] trunk
Revision
205677
Author
[email protected]
Date
2016-09-08 17:05:36 -0700 (Thu, 08 Sep 2016)

Log Message

URLParser should parse URLs with a user but no password
https://bugs.webkit.org/show_bug.cgi?id=161773

Reviewed by Brady Eidson.

Source/WebCore:

Covered by new API tests.

* platform/URLParser.cpp:
(WebCore::URLParser::parseAuthority):

Tools:

* TestWebKitAPI/Tests/WebCore/URLParser.cpp:
(TestWebKitAPI::TEST_F):

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (205676 => 205677)


--- trunk/Source/WebCore/ChangeLog	2016-09-08 23:21:27 UTC (rev 205676)
+++ trunk/Source/WebCore/ChangeLog	2016-09-09 00:05:36 UTC (rev 205677)
@@ -1,5 +1,17 @@
 2016-09-08  Alex Christensen  <[email protected]>
 
+        URLParser should parse URLs with a user but no password
+        https://bugs.webkit.org/show_bug.cgi?id=161773
+
+        Reviewed by Brady Eidson.
+
+        Covered by new API tests.
+
+        * platform/URLParser.cpp:
+        (WebCore::URLParser::parseAuthority):
+
+2016-09-08  Alex Christensen  <[email protected]>
+
         Fix URLs after r205669.
         https://bugs.webkit.org/show_bug.cgi?id=161731
 

Modified: trunk/Source/WebCore/platform/URLParser.cpp (205676 => 205677)


--- trunk/Source/WebCore/platform/URLParser.cpp	2016-09-08 23:21:27 UTC (rev 205676)
+++ trunk/Source/WebCore/platform/URLParser.cpp	2016-09-09 00:05:36 UTC (rev 205677)
@@ -1007,6 +1007,8 @@
     for (; iterator != end; ++iterator)
         m_buffer.append(*iterator);
     m_url.m_passwordEnd = m_buffer.length();
+    if (!m_url.m_userEnd)
+        m_url.m_userEnd = m_url.m_passwordEnd;
     m_buffer.append('@');
 }
 

Modified: trunk/Tools/ChangeLog (205676 => 205677)


--- trunk/Tools/ChangeLog	2016-09-08 23:21:27 UTC (rev 205676)
+++ trunk/Tools/ChangeLog	2016-09-09 00:05:36 UTC (rev 205677)
@@ -1,5 +1,15 @@
 2016-09-08  Alex Christensen  <[email protected]>
 
+        URLParser should parse URLs with a user but no password
+        https://bugs.webkit.org/show_bug.cgi?id=161773
+
+        Reviewed by Brady Eidson.
+
+        * TestWebKitAPI/Tests/WebCore/URLParser.cpp:
+        (TestWebKitAPI::TEST_F):
+
+2016-09-08  Alex Christensen  <[email protected]>
+
         URLParser should parse ports after IPv4 and IPv6 hosts
         https://bugs.webkit.org/show_bug.cgi?id=161731
 

Modified: trunk/Tools/TestWebKitAPI/Tests/WebCore/URLParser.cpp (205676 => 205677)


--- trunk/Tools/TestWebKitAPI/Tests/WebCore/URLParser.cpp	2016-09-08 23:21:27 UTC (rev 205676)
+++ trunk/Tools/TestWebKitAPI/Tests/WebCore/URLParser.cpp	2016-09-09 00:05:36 UTC (rev 205677)
@@ -192,6 +192,7 @@
     checkURL("http://host:123", {"http", "", "", "host", 123, "/", "", "", "http://host:123/"});
     checkURL("http://host:", {"http", "", "", "host", 0, "/", "", "", "http://host/"});
     checkURL("http://hos\tt\n:\t1\n2\t3\t/\npath", {"http", "", "", "host", 123, "/path", "", "", "http://host:123/path"});
+    checkURL("http://[email protected]/path3", {"http", "user", "", "example.org", 0, "/path3", "", "", "http://[email protected]/path3"});
 
     // This disagrees with the web platform test for http://:@www.example.com but agrees with Chrome and URL::parse,
     // and Firefox fails the web platform test differently. Maybe the web platform test ought to be changed.
@@ -252,6 +253,7 @@
     checkRelativeURL("http://:@host", "about:blank", {"http", "", "", "host", 0, "/", "", "", "http://host/"});
     checkRelativeURL("http://foo.com/\\@", "http://example.org/foo/bar", {"http", "", "", "foo.com", 0, "//@", "", "", "http://foo.com//@"});
     checkRelativeURL("\\@", "http://example.org/foo/bar", {"http", "", "", "example.org", 0, "/@", "", "", "http://example.org/@"});
+    checkRelativeURL("/path3", "http://[email protected]/path1/path2", {"http", "user", "", "example.org", 0, "/path3", "", "", "http://[email protected]/path3"});
 }
 
 static void checkURLDifferences(const String& urlString, const ExpectedParts& partsNew, const ExpectedParts& partsOld)
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to