<html>
<head>
<script>
function runTest()
{
    if (window.testRunner) {
        testRunner.dumpAsText();
        testRunner.dumpResourceLoadCallbacks();
        testRunner.setIconDatabaseEnabled(true);
        testRunner.overridePreference("WebKitDisplayImagesKey", 0);
        testRunner.queueReload();
    }
}
</script>
<link rel="icon" href="resources/favicon.ico" type="image/x-icon">
</head>
<body onload="runTest()">
Radar 6973106 and https://bugs.webkit.org/show_bug.cgi?id=27896 - Favicons still load when automatic image loading is disabled.<br>
This test uses DRT's resource load delegate callback mode to see if the favicon is loaded even when image loading is off.<br>
</body>
</html>
