Bug 1203472 - [css-grid] Add missing |mIsSubgrid| check. r=simon.sapin@exyr.org
authorMats Palmgren <mats@mozilla.com>
Thu, 10 Sep 2015 21:07:26 +0200
changeset 296155 0efead085a3b3212755cd398a8f77f5847bd1efd
parent 296154 435a86d7a398b7f20401d7c2dd4d5154784341d9
child 296156 3a08426c6483533f850e8deda7c2504dad403ac6
push id962
push userjlund@mozilla.com
push dateFri, 04 Dec 2015 23:28:54 +0000
treeherdermozilla-release@23a2d286e80f [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewerssimon
bugs1203472, 1176782
milestone43.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 1203472 - [css-grid] Add missing |mIsSubgrid| check. r=simon.sapin@exyr.org The missing |mIsSubgrid| check caused nsStylePosition::CalcDifference to return zero even after the property value was changed to 'subgrid'. See bug 1176782 comment 14 (and the comments leading up to that) for details.
layout/style/nsStyleStruct.h
--- a/layout/style/nsStyleStruct.h
+++ b/layout/style/nsStyleStruct.h
@@ -1278,17 +1278,18 @@ struct nsStyleGridTemplate {
   nsTArray<nsStyleCoord> mMaxTrackSizingFunctions;
 
   nsStyleGridTemplate()
     : mIsSubgrid(false)
   {
   }
 
   inline bool operator!=(const nsStyleGridTemplate& aOther) const {
-    return mLineNameLists != aOther.mLineNameLists ||
+    return mIsSubgrid != aOther.mIsSubgrid ||
+           mLineNameLists != aOther.mLineNameLists ||
            mMinTrackSizingFunctions != aOther.mMinTrackSizingFunctions ||
            mMaxTrackSizingFunctions != aOther.mMaxTrackSizingFunctions;
   }
 };
 
 struct nsStyleGridLine {
   // http://dev.w3.org/csswg/css-grid/#typedef-grid-line
   // XXXmats we could optimize memory size here