This is an archived snapshot of W3C's public bugzilla bug tracker, decommissioned in April 2019. Please see the home page for more details.
Interesting things happen when the URLUtils.protocol setter changes an URL’s scheme to a relative scheme from a non-relative scheme, or vice-versa. See https://github.com/servo/rust-url/pull/83 Test case: http://software.hixie.ch/utilities/js/live-dom-viewer/?saved=3428 <a href="mailto:a@b.net"> <script> var a = document.body.firstChild; console.log(a.href); a.protocol = "http"; console.log(a.href) </script> In Chromium: log: mailto:a@b.net log: http://a@b.net/ In old Opera (Presto): log: mailto:a@b.net log: http:///a@b.net In Firefox: log: mailto:a@b.net log: http://software.hixie.ch/utilities/js/live-dom-viewer/a@b.net
It's not clear why this is a problem with the specification.
I ended up changing this as part of https://github.com/whatwg/url/commit/b266a43fc9df0e8607074bd4d336a517e2010009 Hopefully that can be supported since the current situation is not great. Resolving WORKSFORME though since there was not an actual bug report here.