<img style="background-color: blue" >
<script>
if (window.testRunner) {
    testRunner.waitUntilDone();
}

function loadAndStall()
{
    return "http://127.0.0.1:8000/resources/load-and-stall.php";
}

function gifImage()
{
    return "?name=../permissionclient/resources/boston.gif&mimeType=image%2Fgif";
}

function testDone()
{
    if (window.testRunner)
        testRunner.notifyDone();
}

function runTest()
{
    // This test checks that GIF loading doesn't fail when the first chunk of data decoded
    // contains the metadata, but not a complete frame. See webkit.org/b/170432.
    document.querySelector("img").src = loadAndStall() + gifImage() + "&stallAt=512&stallFor=1";
    setTimeout(testDone, 1500);
}

setTimeout(runTest, 0);
</script>
