blob: 948d771c095e02b6da85a61ef06675e616e8a114 [file] [log] [blame]
<html>
<head>
<script src="resources/cross-frame-access.js"></script>
</head>
<body>
<iframe src="http://localhost:8000/" style=""></iframe>
<pre id="console"></pre>
<script>
if (window.testRunner) {
testRunner.dumpAsText();
testRunner.waitUntilDone();
}
log("Tests that making other frame window a prototype doesn't expose that window methods");
targetWindow = frames[0];
wasInvoked = false;
function callback(global) {
global.wasInvoked = true;
}
function check() {
shouldBeFalse('this.wasInvoked');
if (window.testRunner)
testRunner.notifyDone();
}
window.onload = function() {
originalSetTimeout = setTimeout;
__proto__ = targetWindow;
var needsCheck = false;
try {
targetWindow.setTimeout(callback, 0, this);
needsCheck = true;
} catch (e) { }
try {
setTimeout.call(targetWindow, callback, 0, this);
needsCheck = true;
} catch(e) { }
try {
originalSetTimeout.call(targetWindow, callback, 0, this);
needsCheck = true;
} catch(e) { }
if (needsCheck) {
originalSetTimeout(check, 10);
} else {
if (window.testRunner)
testRunner.notifyDone();
}
}
</script>
</body>
</html>