<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.layoutTestController) {
    layoutTestController.setCanOpenWindows();
    layoutTestController.dumpAsText();
    layoutTestController.dumpChildFramesAsText();
    layoutTestController.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>
