Bug 852293 - crash test
authorJesse Ruderman <jruderman@gmail.com>
Mon, 13 May 2013 16:28:28 +0200
changeset 131783 62aa2d6dbeb2d633ebbdbd0f875fa4e08afa1aa1
parent 131782 f3b7d0043d91093e0429b1ef37aec7148c7e8d5e
child 131784 e636b91b1cbb37cd82a2467bcd10db7e0d6e673e
push id24671
push userryanvm@gmail.com
push dateMon, 13 May 2013 20:32:09 +0000
treeherdermozilla-central@81dd97739fa1 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
bugs852293
milestone23.0a1
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Bug 852293 - crash test
layout/base/crashtests/852293.html
layout/base/crashtests/crashtests.list
new file mode 100644
--- /dev/null
+++ b/layout/base/crashtests/852293.html
@@ -0,0 +1,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.removeChild(root.firstChild); }
+}
+
+</script>
+</head>
+
+<body onload="start();"></body>
+</html>
--- a/layout/base/crashtests/crashtests.list
+++ b/layout/base/crashtests/crashtests.list
@@ -392,12 +392,13 @@ asserts(0-2) load 736389-1.xhtml # somet
 asserts-if(winWidget,0-2) load 736924-1.html # bug 738803
 load 749816-1.html
 load 763223-1.html
 test-pref(font.size.inflation.emPerLine,15) test-pref(font.size.inflation.lineThreshold,100) load 763702.xhtml
 load 770381-1.html
 load 795646.html
 load 813372-1.html
 load 836990-1.html
+load 852293.html
 load 860579-1.html
 pref(layers.force-active,true) load 859526-1.html
 pref(layers.force-active,true) load 859630-1.html
 load 866588.html