<!DOCTYPE HTML> <html> <!-- https://bugzilla.mozilla.org/show_bug.cgi?id=343596 --> <head> <title>Test for Bug 343596</title> <script type="text/javascript" src="/tests/SimpleTest/SimpleTest.js"></script> <link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css" /> </head> <body> <a target="_blank" href="https://bugzilla.mozilla.org/show_bug.cgi?id=343596">Mozilla Bug 343596</a> <p id="display"></p> <script id="foo"></script> <div id="content" style="display: none"> </div> <pre id="test"> <script class="testbody" type="text/javascript"> /** Test for Bug 343596 **/ SimpleTest.waitForExplicitFinish(); /** Cut error handling, because we're going to throw on purpose**/ var errorHandler = window.onerror; window.onerror = null; try{ // Insert text into an empty script node that will cause a syntax error. document.getElementById("foo").appendChild(document.createTextNode("(")); } catch(ex){ // Note that this catch block does not execute. ok(false, "this catch block should not execute"); } setTimeout(function(){ ok(true,"setTimeout still executes after bogus script insertion"); window.error = errorHandler; SimpleTest.finish();}, 0); </script> </pre> </body> </html>