<html>
<head>
<script>
if (window.testRunner) {
    testRunner.dumpAsText();
    testRunner.waitUntilDone();
    testRunner.setAllowUniversalAccessFromFileURLs(false);
}
</script>
</head>
<body>
<iframe src="resources/xmlhttprequest-nonexistent-file-real.html"></iframe>
<div id="results"></div>
</body>
</html>
