<html>
<head>
<title>Test Bugzilla Bug 11756 - REGRESSION: link targeting a frame in another window does not work</title>
<script type="text/javascript">
<!--
if (window.testRunner) {
    testRunner.dumpAsText();
    testRunner.dumpChildFramesAsText();
    testRunner.waitUntilDone();
}

var runOnce = 0;
function openPopup()
{
    if (runOnce) return;
    runOnce++;
    window.open('resources/target-frame-from-window-popup.html', "popup");
}
// -->
</script>
</head>
<frameset cols="*">
    <frame name="test" src="resources/target-frame-from-window-start.html" marginwidth="0" marginheight="0" scrolling="auto" frameborder="0" onload="openPopup()">
</frameset>
</html>
