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 294450 0efead085a3b3212755cd398a8f77f5847bd1efd
parent 294449 435a86d7a398b7f20401d7c2dd4d5154784341d9
child 294451 3a08426c6483533f850e8deda7c2504dad403ac6
push id5245
push userraliiev@mozilla.com
push dateThu, 29 Oct 2015 11:30:51 +0000
treeherdermozilla-beta@dac831dc1bd0 [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