summaryrefslogtreecommitdiffstats
path: root/dom/plugins/test/mochitest/file_bug863792.html
blob: b4d3dc2e074cb8de3bbff364b468291d85832981 (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
41
42
43
44
45
<!doctype html>
<html>
<head>
  <title>File for Bug 863792</title>

  <meta http-equiv="content-type" content="text/html; charset=utf-8">
  <base href="chrome://browser/content/">
</head>
<body>
<script type="application/javascript">

// A plugin that removes itself from the document and inactivates said document
// inside NPP_New. We should not leak the instance. See also test_bug854082

var outerwindow = window;
var i = document.createElement("iframe");
i.width = 500;
i.height = 500;
var ob = document.body;
document.body.appendChild(i);
i.addEventListener("load", function loaded() {
  var id = i.contentDocument;
  var e = id.createElement("embed");
  var callbackrun = false;
  e.width = 200;
  e.height = 200;
  e.type = "application/x-test";
  e.__defineSetter__("pluginFoundElement", function() {
    window.console.log("pluginFoundElement");
    e.style.display = "none";
    e.clientTop;
    i.removeEventListener("load", loaded);
    ob.removeChild(i);
    id.body.clientTop;
    id.body.removeChild(e);
    callbackrun = true;
  });
  id.body.appendChild(e);
  e.clientTop;
  e = id = i = ob = null;
  SpecialPowers.forceCC(); SpecialPowers.forceGC();
}, false);
</script>
</body>
</html>