summaryrefslogtreecommitdiffstats
path: root/dom/plugins/test/crashtests/540114-1.html
blob: 8243649aa32aa8e3b1f2e07c8b231974024d47d5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
<!DOCTYPE html>
<html class="reftest-wait">
<head>
<script type="text/javascript">
function crashplugin() {
  var plugin = document.getElementById('removeme');
  var flush_reflow = plugin.offsetHeight; // this may not be necessary
  document.body.removeChild(plugin);
  // Give the plugin time to crash
  setTimeout(function() { document.documentElement.removeAttribute('class') },
             1000);
}

function getTestCases() {
  return [
    { testPassed:
      (function () {
        // Assuming the same process is used for removeme and checkme
        var plugin = document.getElementById('checkme');
        try {
          plugin.getPaintCount();
          return true;
        } catch (e) {
          return false;
        }
      }),
      testDescription:
      (function () {
        return "plugin should not crash";
      })
    }
  ];
}
</script>
</head>
<body onload="crashplugin();">
<embed id="checkme" type="application/x-test"/>
<embed id="removeme" type="application/x-test" wmode="window" cleanupwidget="false"/>
</body>
</html>