Index: Source/core/layout/style/LayoutStyle.cpp |
diff --git a/Source/core/layout/style/LayoutStyle.cpp b/Source/core/layout/style/LayoutStyle.cpp |
index 3915a94c7683873de695056165c52574f38d721e..ac558d30afd62db3b0d6b8bae062d5f16c219cbd 100644 |
--- a/Source/core/layout/style/LayoutStyle.cpp |
+++ b/Source/core/layout/style/LayoutStyle.cpp |
@@ -188,14 +188,15 @@ StyleRecalcChange LayoutStyle::stylePropagationDiff(const LayoutStyle* oldStyle, |
|| oldStyle->alignItems() != newStyle->alignItems()) |
return Reattach; |
- if (oldStyle->inheritedNotEqual(*newStyle) |
- || oldStyle->hasExplicitlyInheritedProperties() |
- || newStyle->hasExplicitlyInheritedProperties()) |
+ if (oldStyle->inheritedNotEqual(*newStyle)) |
return Inherit; |
if (*oldStyle == *newStyle) |
return diffPseudoStyles(*oldStyle, *newStyle); |
+ if (oldStyle->hasExplicitlyInheritedProperties()) |
+ return Inherit; |
+ |
return NoInherit; |
} |
@@ -251,7 +252,6 @@ void LayoutStyle::copyNonInheritedFrom(const LayoutStyle& other) |
noninherited_flags.pageBreakBefore = other.noninherited_flags.pageBreakBefore; |
noninherited_flags.pageBreakAfter = other.noninherited_flags.pageBreakAfter; |
noninherited_flags.pageBreakInside = other.noninherited_flags.pageBreakInside; |
- noninherited_flags.explicitInheritance = other.noninherited_flags.explicitInheritance; |
esprehn
2015/02/13 02:29:13
Why is it okay not to copy this bit? This seems to
|
noninherited_flags.hasViewportUnits = other.noninherited_flags.hasViewportUnits; |
if (m_svgStyle != other.m_svgStyle) |
m_svgStyle.access()->copyNonInheritedFrom(other.m_svgStyle.get()); |