Bug 1335998 - Part 3: Add a crashtest for mismatched transform lists. draft
authorBoris Chiou <boris.chiou@gmail.com>
Sat, 03 Jun 2017 16:56:03 +0800
changeset 590024 37387e693eb1899fb648225fc34f01d50ffd132e
parent 590023 0a86978578a7db7050d4c8854b31780c579652a1
child 632072 f4de33d0e2ecbe0eea7d419b8a3d85b501733b33
push id62578
push userbmo:boris.chiou@gmail.com
push dateWed, 07 Jun 2017 04:32:00 +0000
bugs1335998
milestone55.0a1
Bug 1335998 - Part 3: Add a crashtest for mismatched transform lists. Add this crashtest for interpolation/accumulation on mismatched transform lists to make sure it doesn't crash and there is no leak because we use nsCSSValueSharedList, instead of nsCSSValueList_heap, for Servo backend. MozReview-Commit-ID: 2VdKSQcK7pj
dom/animation/test/crashtests/1335998-1.html
dom/animation/test/crashtests/crashtests.list
new file mode 100644
--- /dev/null
+++ b/dom/animation/test/crashtests/1335998-1.html
@@ -0,0 +1,28 @@
+<!doctype html>
+<html class="reftest-wait">
+  <head>
+    <title>
+      Bug 1335998 - Handle {Interpolate, Accumulate}Matrix of mismatched transform lists
+    </title>
+    <style>
+    #target {
+      width: 100px; height: 100px;
+      background: blue;
+      transform: rotate(45deg);
+    }
+    </style>
+  </head>
+  <body>
+  <div id="target"></div>
+  </body>
+  <script>
+    var div = document.getElementById("target");
+    var animation = div.animate([ { transform: 'translateX(200px) scale(2.0)',
+                                    composite: 'accumulate' },
+                                  { transform: 'rotate(-45deg)' } ],
+                                2000);
+    animation.finished.then(function() {
+      document.documentElement.className = "";
+    });
+  </script>
+</html>
--- a/dom/animation/test/crashtests/crashtests.list
+++ b/dom/animation/test/crashtests/crashtests.list
@@ -21,10 +21,11 @@ pref(dom.animations-api.core.enabled,tru
 pref(dom.animations-api.core.enabled,true) load 1325193-1.html
 pref(dom.animations-api.core.enabled,true) load 1330190-1.html
 pref(dom.animations-api.core.enabled,true) load 1330190-2.html
 pref(dom.animations-api.core.enabled,true) load 1330513-1.html
 pref(dom.animations-api.core.enabled,true) load 1333539-1.html
 pref(dom.animations-api.core.enabled,true) load 1333539-2.html
 pref(dom.animations-api.core.enabled,true) load 1333418-1.html
 pref(dom.animations-api.core.enabled,true) load 1334583-1.html
+pref(dom.animations-api.core.enabled,true) load 1335998-1.html
 pref(dom.animations-api.core.enabled,true) load 1343589-1.html
 pref(dom.animations-api.core.enabled,true) load 1359658-1.html