<html>
<head>
<script>
var frames = 2;
if (window.testRunner) {
	testRunner.dumpAsText();
	testRunner.dumpChildFramesAsText();
	testRunner.waitUntilDone();
}

function decrement() {
	--frames;
	if (!frames && window.testRunner)
		testRunner.notifyDone();
}

window.onmessage = decrement;
</script>
</head>
<body>
<p>This iframe should not return any errors:</p>
<iframe src="http://localhost:8000/security/resources/cross-origin-iframe-for-worker-websql.html"></iframe>
<p>This iframe should not return any errors:</p>
<iframe src="http://127.0.0.1:8000/security/resources/cross-origin-iframe-for-worker-websql.html"></iframe>
</body>
</html>
