<head>
<script>
function MyCallback() {
  
}

function test() {
  try {

    var plugin = window.frames["subframe"].document.plugins[0];
    plugin.getURL('javascript:parent.document.getElementById("d").innerHTML = "";', '_self');

  } catch (ex) {
    alert(ex);
  }

  setTimeout(done, 10);
}

function done() {
  layoutTestController.dumpAsText();
  layoutTestController.notifyDone();
}
</script>
</head>
<body onload="layoutTestController.waitUntilDone(); setTimeout(test, 10)">
<p>Test for <a href="http://bugs.webkit.org/show_bug.cgi?id=14437">bug 14437</a>:
RTÉ video crashes Safari.</p>
<p>Only works with DumpRenderTree.</p>

<div id='d'>
  <iframe id='subframe' src='resources/plugin-remove-subframe-iframe.html'></iframe>
</div>
</body>
