Backed out 1 changesets (bug 1467688) for reftest failures crashtests/1467688.html CLOSED TREE
authorCiure Andrei <aciure@mozilla.com>
Tue, 03 Jul 2018 01:55:17 +0300
changeset 424725 3446bd708e60fbe242415a6d44ea77c15f5ee8f6
parent 424724 d783a8ddd72d15bfef89a1e81f31f0dd35cfa276
child 424726 a68714d7bf330057e4d45907b60ca4d9eec49495
push id65832
push useraciure@mozilla.com
push dateMon, 02 Jul 2018 22:55:52 +0000
treeherderautoland@3446bd708e60 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
bugs1467688
milestone63.0a1
backs outb976829f826a7fba883fe1a088f5500a80c6441b
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
Backed out 1 changesets (bug 1467688) for reftest failures crashtests/1467688.html CLOSED TREE Backed out changeset b976829f826a (bug 1467688)
layout/base/crashtests/1467688.html
layout/base/crashtests/crashtests.list
layout/style/nsStyleStruct.cpp
deleted file mode 100644
--- a/layout/base/crashtests/1467688.html
+++ /dev/null
@@ -1,17 +0,0 @@
-<html class="reftest-wait">
-<head>
-<meta http-equiv="content-type" content="text/html; charset=UTF-8">
-</head>
-<body style="transform:translate(4px)">
-<div id="invalid" style="width:100px; height:100px; background-color:red;"></div>
-<script>
-  function doTest() {
-    document.documentElement.style.perspective = '100px';
-    document.getElementById("invalid").style.backgroundColor = "green";
-    document.documentElement.removeAttribute("class");
-  }
-  window.addEventListener("MozReftestInvalidate", doTest);
-}
-</script>
-</body>
-</html>
--- a/layout/base/crashtests/crashtests.list
+++ b/layout/base/crashtests/crashtests.list
@@ -539,11 +539,10 @@ load 1453196.html
 load 1453342.html
 load 1453702.html
 pref(dom.webcomponents.shadowdom.enabled,true) load 1461749.html
 load 1461812.html
 load 1462412.html
 load 1463940.html
 pref(dom.webcomponents.shadowdom.enabled,true) HTTP load 1464641.html
 load 1464737.html
-load 1467688.html
 load 1467964.html
 load 1469354.html
--- a/layout/style/nsStyleStruct.cpp
+++ b/layout/style/nsStyleStruct.cpp
@@ -3858,17 +3858,23 @@ nsStyleDisplay::CalcDifference(const nsS
 
     for (uint8_t index = 0; index < 2; ++index) {
       if (mPerspectiveOrigin[index] != aNewData.mPerspectiveOrigin[index]) {
         transformHint |= kUpdateOverflowAndRepaintHint;
         break;
       }
     }
 
-    if (mTransformStyle != aNewData.mTransformStyle ||
+    if (HasPerspectiveStyle() != aNewData.HasPerspectiveStyle()) {
+      // A change from/to being a containing block for position:fixed.
+      hint |= nsChangeHint_UpdateContainingBlock;
+    }
+
+    if (mChildPerspective != aNewData.mChildPerspective ||
+        mTransformStyle != aNewData.mTransformStyle ||
         mTransformBox != aNewData.mTransformBox) {
       transformHint |= kUpdateOverflowAndRepaintHint;
     }
 
     if (mBackfaceVisibility != aNewData.mBackfaceVisibility) {
       transformHint |= nsChangeHint_RepaintFrame;
     }
 
@@ -3876,26 +3882,16 @@ nsStyleDisplay::CalcDifference(const nsS
       if (HasTransformStyle()) {
         hint |= transformHint;
       } else {
         hint |= nsChangeHint_NeutralChange;
       }
     }
   }
 
-  if (HasPerspectiveStyle() != aNewData.HasPerspectiveStyle()) {
-    // A change from/to being a containing block for position:fixed.
-    hint |= nsChangeHint_UpdateContainingBlock |
-            nsChangeHint_UpdateOverflow |
-            nsChangeHint_RepaintFrame;
-  } else if (mChildPerspective != aNewData.mChildPerspective) {
-    hint |= nsChangeHint_UpdateOverflow |
-            nsChangeHint_RepaintFrame;
-  }
-
   // Note that the HasTransformStyle() != aNewData.HasTransformStyle()
   // test above handles relevant changes in the
   // NS_STYLE_WILL_CHANGE_TRANSFORM bit, which in turn handles frame
   // reconstruction for changes in the containing block of
   // fixed-positioned elements.
   uint8_t willChangeBitsChanged =
     mWillChangeBitField ^ aNewData.mWillChangeBitField;
   if (willChangeBitsChanged & (NS_STYLE_WILL_CHANGE_STACKING_CONTEXT |