<head>
<base href="http://www.366.ru/">
</head>
<p>
    Test for <i><a href="https://bugs.webkit.org/show_bug.cgi?id=19884">bug 19884</a></i>
    Locating a store at www.366.ru doesn't work.
</p>
<p id="result">FAIL</p>
<hr>
<form id="t" action="" onsubmit="return true"><input name=a value=b></form>
<script>
    if (!location.href.match('\\?')) {
        if (window.testRunner) {
            testRunner.dumpAsText();
            testRunner.waitUntilDone();
        }
        document.getElementById("t").submit();
    } else {
        document.getElementById("result").innerHTML = "PASS";
        if (window.testRunner)
            testRunner.notifyDone();
    }
</script>
