<html>
    <head>
        <script type="text/javascript">
            function log(message)
            {
                var item = document.createElement("li");
                item.appendChild(document.createTextNode(message));
                document.getElementById("console").appendChild(item);
            }
            function test()
            {
                if (window.testRunner)
                    testRunner.dumpAsText();
                log("paths like this should turn all \\ characters into /: \"" + document.getElementById("1").pathname + "\"");
                log("query strings like this one should still have \\ characters: \"" + document.getElementById("2").search + "\"");
                log("query strings like this one should still have \\ characters even if the URL is only a query: \"" + document.getElementById("3").search + "\"");
                log("anchor strings like this one should still have \\ characters: \"" + document.getElementById("4").hash + "\"");
                log("anchor strings like this one should still have \\ characters even if the URL is only an anchor: \"" + document.getElementById("5").hash + "\"");
            }
	</script>
    </head>
    <body onload="test()">
        <p>This tests \ characters being changed to / in anchor tags.</p>
        <p>If it works you should see five messages below that have \ or / characters as specified.</p>
        <hr>
        <a id="1" href="file:\\\a\b\c\">1</a>
        <a id="2" href="file:///?path=\\a\b\c\">2</a>
        <a id="3" href="?path=\\myshare\myfolder\myfile\">3</a>
        <a id="4" href="file:///#path=\\a\b\c\">4</a>
        <a id="5" href="#path=\\myshare\myfolder\myfile\">5</a>
        <hr>
        <p><ol id="console"></ol></p>
    </body>
</html>
