<body>
<script>
if (window.testRunner) {
    testRunner.dumpAsText();
    testRunner.waitUntilDone();
}

function test()
{
    location='resources/stopped-revalidation-result.html';

    setTimeout(function() {
        var img = document.getElementsByTagName("img")[0];
        document.body.removeChild(img);
        img = document.createElement("img");
        img.style.display = "none";
        img.src = "resources/compass-no-cache.jpg";
        document.body.appendChild(img);
        img.style.display = "inline";
    }, 0);
}
</script>
<img src="resources/compass-no-cache.jpg" onload="test()">
</body>
