Given a URL, "foo:/hello/world?someQuery", which is path-only and hierarchical (cannot-be-a-base is false),
it is possible to set pathname to the empty string, resulting in "foo:?someQuery", which is non-hierarchical but not internally marked as such
(cannot-be-a-base is still false).
That means it is possible to perform actions which typically cannot be performed on non-hierarchical URLs, such as setting certain components or using them as base URLs.
Moreover, re-parsing the same URL "foo:?someQuery" correctly sets the cannot-be-a-base flag, meaning that idempotence is broken.
PR to update the URL Standard: https://github.com/whatwg/url/pull/582
*** Bug 227341 has been marked as a duplicate of this bug. ***
Created attachment 432137 [details]
This patch modifies the imported WPT tests. Please ensure that any changes on the tests (not coming from a WPT import) are exported to WPT. Please see https://trac.webkit.org/wiki/WPTExportProcess
Note to self: double check setting the pathname of "foo:///" to the empty string.
Created attachment 432189 [details]
Created attachment 432217 [details]
Tools/Scripts/svn-apply failed to apply attachment 432217 [details] to trunk.
Please resolve the conflicts and upload a new patch.
This was effectively done in http://trac.webkit.org/r279895
*** This bug has been marked as a duplicate of bug 227820 ***