diff options
Diffstat (limited to 'chromium/third_party/WebKit/Source/core/css/resolver/CSSToStyleMap.cpp')
-rw-r--r-- | chromium/third_party/WebKit/Source/core/css/resolver/CSSToStyleMap.cpp | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/chromium/third_party/WebKit/Source/core/css/resolver/CSSToStyleMap.cpp b/chromium/third_party/WebKit/Source/core/css/resolver/CSSToStyleMap.cpp index 31303805178..9eeec75b2c7 100644 --- a/chromium/third_party/WebKit/Source/core/css/resolver/CSSToStyleMap.cpp +++ b/chromium/third_party/WebKit/Source/core/css/resolver/CSSToStyleMap.cpp @@ -180,11 +180,15 @@ void CSSToStyleMap::mapFillRepeatY(CSSPropertyID, FillLayer* layer, CSSValue* va void CSSToStyleMap::mapFillSize(CSSPropertyID, FillLayer* layer, CSSValue* value) const { - if (!value->isPrimitiveValue()) { - layer->setSizeType(SizeNone); + if (value->isInitialValue()) { + layer->setSizeType(FillLayer::initialFillSizeType(layer->type())); + layer->setSizeLength(FillLayer::initialFillSizeLength(layer->type())); return; } + if (!value->isPrimitiveValue()) + return; + CSSPrimitiveValue* primitiveValue = toCSSPrimitiveValue(value); if (primitiveValue->getValueID() == CSSValueContain) layer->setSizeType(Contain); @@ -195,7 +199,7 @@ void CSSToStyleMap::mapFillSize(CSSPropertyID, FillLayer* layer, CSSValue* value LengthSize b = FillLayer::initialFillSizeLength(layer->type()); - if (value->isInitialValue() || primitiveValue->getValueID() == CSSValueContain || primitiveValue->getValueID() == CSSValueCover) { + if (primitiveValue->getValueID() == CSSValueContain || primitiveValue->getValueID() == CSSValueCover) { layer->setSizeLength(b); return; } |