<!DOCTYPE HTML> <html> <!-- https://bugzilla.mozilla.org/show_bug.cgi?id=504862 --> <head> <title>Test for Bug 504862</title> <script type="text/javascript" src="/tests/SimpleTest/SimpleTest.js"></script> <link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css" /> </head> <body onload="runTest()"> <a target="_blank" href="https://bugzilla.mozilla.org/show_bug.cgi?id=504862">Mozilla Bug 504862</a> <script class="testbody" type="text/javascript"> /** Test for Bug 504862 **/ SimpleTest.waitForExplicitFinish(); function onMsgRcv(event) { is(event.data, "args: undefined", "Unexpected cross origin dialog arguments."); } function runTest() { if ("showModalDialog" in window) { window.addEventListener("message", onMsgRcv, false); var result = window.showModalDialog("file_bug504862.html", "my args"); // NB: We used to clear returnValue on each navigation, but now we do a // security check on access, so we can safely make returnValue live on // the browsing context, per spec. is(result, 3, "window sees previous dialog documents return value."); result = window.showModalDialog("http://test1.example.com/tests/dom/tests/mochitest/bugs/file_bug504862.html", "my args"); is(result, undefined, "Able to see return value from cross origin dialog."); } else { ok(true, "nothing to do in e10s mode"); } SimpleTest.finish(); } </script> </pre> </body> </html>