summaryrefslogtreecommitdiffstats
path: root/layout/base/crashtests/852293.html
blob: 8c4783933d0ad556fa1d2c880908c9346a4dec76 (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
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
<!DOCTYPE html>
<html class="reftest-wait">
<head>
<meta charset="UTF-8">
<script>
"use strict";

var i = 0;
var x;
var fixedDiv;
var sheet;

function start()
{
  clearChildren(document.documentElement);

  for (var j = 0; j < 10; ++j) {
    document.documentElement.appendChild(document.createElement("div"));
  }
  x = document.getElementsByTagName("div")[0];

  fixedDiv = document.createElementNS("http://www.w3.org/1999/xhtml", "div");
  fixedDiv.style.setProperty("position", "fixed", "");

  setTimeout(makeChanges, 10);
}

function makeChanges()
{
  ++i;
  x.appendChild(fixedDiv);
  sheet = document.createElement("style");
  sheet.appendChild(document.createTextNode("* { transform: matrix(1, 2, 3, 4, 5, 6); }"));
  document.documentElement.appendChild(sheet);
  if (i >= 200) {
    document.documentElement.removeAttribute("class");
    return;
  }
  setTimeout(revertChanges, 10);
}

function revertChanges()
{
  x.removeChild(fixedDiv);
  document.documentElement.removeChild(sheet);
  bounceDE();
  setTimeout(makeChanges, 10);
}


function bounceDE()
{
  var de = document.documentElement;
  document.removeChild(de);
  document.appendChild(de);
}

function clearChildren(root)
{
  while(root.firstChild) { root.firstChild.remove(); }
}

</script>
</head>

<body onload="start();"></body>
</html>