<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> <html lang="en"> <head> <script type="text/javascript"> var inner_win; function open_inner() { var src = 'data:text/html,<title>Pop up</title><input type="button" value="Close" onclick="opener.closeChild()">'; var tp = document.getElementById("theparent"); inner_win = window.open(src, 'inner', 'width=200, height=200, left=' + (screenLeft + tp.offsetLeft) + ', top=' + (screenTop + outerHeight - innerHeight + tp.offsetTop)); } function removeHoverNode() { var tp = document.getElementById("theparent"); tp.parentNode.removeChild(tp); setTimeout(reportSuccess, 500); } function reportSuccess() { document.body.appendChild(document.createTextNode("SUCCESS")); } function closeChild() { inner_win.close(); document.body.offsetTop; setTimeout(removeHoverNode, 100); } </script> </head> <body> <p><b>BUG ID:</b> <a href="rdar://problem/5095977">5095997</a> (<a href="http://bugs.webkit.org/show_bug.cgi?id=13218">13218</a>) Reproducible crash after call to window.close()</p> <p id="test" style="background-color:skyblue; padding:3px;"><b>STEPS TO TEST:</b><br> 1. Click the Open button below. A pop up window will open.<br> 2. In the pop up window, click the Close button, being careful not to move the mouse during and shortly after clicking. </p> <p id="success" style="background-color:palegreen; padding:3px;"><b>TEST PASS:</b> The black square will be replaced by the word “SUCCESS” and Safari will not crash. </p> <p id="failure" style="background-color:#FF3300; padding:3px;"><b>TEST FAIL:</b> Safari will crash (the word “SUCCESS” may appear before the crash). </p> <div id='theparent'> <input type="button" value="Open" onclick="open_inner()"> <div style="background: black; width: 200px; height:200px"> </div> </div> </body> </html>