<!-- webkit-test-runner [ enableBackForwardCache=true ] -->
<!DOCTYPE html>
<html>
  <head>
    <script>
    function runTest(e)
    {
      if (e.persisted) {
        if (window.testRunner)
          testRunner.notifyDone();
      } else
        setTimeout(function() { location.href = 'data:text/html,<script>setTimeout(function() { history.back(); }, 1000);</' + 'script>'; }, 1000);
    }

    if (window.testRunner) {
      testRunner.dumpAsText();
      testRunner.waitUntilDone();
    }
    window.onpageshow = runTest;
    </script>
  </head>
  <body>
    <div>PASS. You didn't crash.</div>
    <iframe id='pluginFrame' src='./resources/subframe-with-plugin.html' width=400 height=200></iframe>
  </body>
</html>
