| <html> |
| <script> |
| function runTest() |
| { |
| if (window.layoutTestController) |
| layoutTestController.dumpAsText(); |
| |
| var successCount = 0; |
| var plugin = document.getElementById("testPlugin"); |
| plugin.logDestroy = true; |
| |
| var testObject = plugin.testObject; |
| plugin.parentNode.removeChild(plugin); |
| |
| try { |
| testObject.property; |
| } catch (e) { |
| if (e instanceof ReferenceError) |
| successCount++; |
| } |
| |
| try { |
| testObject.property = 'hello'; |
| } catch (e) { |
| if (e instanceof ReferenceError) |
| successCount++; |
| } |
| |
| if (successCount == 2) |
| document.getElementById('result').innerHTML = 'SUCCESS'; |
| } |
| |
| </script> |
| |
| <body onload="runTest();"> |
| This tests that accessing plug-in script objects from a destroyed plugin cause throws the right exceptions. |
| <div id="result">FAILURE</div> |
| <embed id="testPlugin" type="application/x-webkit-test-netscape" width="200" height="200"></embed> |
| </body> |
| </html> |