Index: Source/core/css/resolver/CSSToStyleMap.cpp |
diff --git a/Source/core/css/resolver/CSSToStyleMap.cpp b/Source/core/css/resolver/CSSToStyleMap.cpp |
index 2b7c2ae257b06c6cd28bcdde380c3c9777f77a70..bee7f7364e6c52fe3dec88ed3e428aa2a0290ee2 100644 |
--- a/Source/core/css/resolver/CSSToStyleMap.cpp |
+++ b/Source/core/css/resolver/CSSToStyleMap.cpp |
@@ -53,7 +53,7 @@ void CSSToStyleMap::mapFillAttachment(StyleResolverState&, FillLayer* layer, CSS |
if (!value.isPrimitiveValue()) |
return; |
- CSSPrimitiveValue& primitiveValue = toCSSPrimitiveValue(value); |
+ CSSPrimitiveValue primitiveValue = toCSSPrimitiveValue(value); |
switch (primitiveValue.getValueID()) { |
case CSSValueFixed: |
layer->setAttachment(FixedBackgroundAttachment); |
@@ -79,7 +79,7 @@ void CSSToStyleMap::mapFillClip(StyleResolverState&, FillLayer* layer, CSSValue |
if (!value.isPrimitiveValue()) |
return; |
- CSSPrimitiveValue& primitiveValue = toCSSPrimitiveValue(value); |
+ CSSPrimitiveValue primitiveValue = toCSSPrimitiveValue(value); |
layer->setClip(primitiveValue); |
} |
@@ -93,7 +93,7 @@ void CSSToStyleMap::mapFillComposite(StyleResolverState&, FillLayer* layer, CSSV |
if (!value.isPrimitiveValue()) |
return; |
- CSSPrimitiveValue& primitiveValue = toCSSPrimitiveValue(value); |
+ CSSPrimitiveValue primitiveValue = toCSSPrimitiveValue(value); |
layer->setComposite(primitiveValue); |
} |
@@ -107,7 +107,7 @@ void CSSToStyleMap::mapFillBlendMode(StyleResolverState&, FillLayer* layer, CSSV |
if (!value.isPrimitiveValue()) |
return; |
- CSSPrimitiveValue& primitiveValue = toCSSPrimitiveValue(value); |
+ CSSPrimitiveValue primitiveValue = toCSSPrimitiveValue(value); |
layer->setBlendMode(primitiveValue); |
} |
@@ -121,7 +121,7 @@ void CSSToStyleMap::mapFillOrigin(StyleResolverState&, FillLayer* layer, CSSValu |
if (!value.isPrimitiveValue()) |
return; |
- CSSPrimitiveValue& primitiveValue = toCSSPrimitiveValue(value); |
+ CSSPrimitiveValue primitiveValue = toCSSPrimitiveValue(value); |
layer->setOrigin(primitiveValue); |
} |
@@ -147,7 +147,7 @@ void CSSToStyleMap::mapFillRepeatX(StyleResolverState&, FillLayer* layer, CSSVal |
if (!value.isPrimitiveValue()) |
return; |
- CSSPrimitiveValue& primitiveValue = toCSSPrimitiveValue(value); |
+ CSSPrimitiveValue primitiveValue = toCSSPrimitiveValue(value); |
layer->setRepeatX(primitiveValue); |
} |
@@ -161,7 +161,7 @@ void CSSToStyleMap::mapFillRepeatY(StyleResolverState&, FillLayer* layer, CSSVal |
if (!value.isPrimitiveValue()) |
return; |
- CSSPrimitiveValue& primitiveValue = toCSSPrimitiveValue(value); |
+ CSSPrimitiveValue primitiveValue = toCSSPrimitiveValue(value); |
layer->setRepeatY(primitiveValue); |
} |
@@ -176,7 +176,7 @@ void CSSToStyleMap::mapFillSize(StyleResolverState& state, FillLayer* layer, CSS |
if (!value.isPrimitiveValue()) |
return; |
- CSSPrimitiveValue& primitiveValue = toCSSPrimitiveValue(value); |
+ CSSPrimitiveValue primitiveValue = toCSSPrimitiveValue(value); |
if (primitiveValue.getValueID() == CSSValueContain) |
layer->setSizeType(Contain); |
else if (primitiveValue.getValueID() == CSSValueCover) |
@@ -217,16 +217,16 @@ void CSSToStyleMap::mapFillXPosition(StyleResolverState& state, FillLayer* layer |
if (!value.isPrimitiveValue()) |
return; |
- CSSPrimitiveValue* primitiveValue = &toCSSPrimitiveValue(value); |
- Pair* pair = primitiveValue->getPairValue(); |
+ CSSPrimitiveValue primitiveValue = toCSSPrimitiveValue(value); |
+ Pair* pair = primitiveValue.getPairValue(); |
if (pair) |
- primitiveValue = pair->second(); |
+ primitiveValue = toCSSPrimitiveValue(*pair->second()); |
- Length length = primitiveValue->convertToLength(state.cssToLengthConversionData()); |
+ Length length = primitiveValue.convertToLength(state.cssToLengthConversionData()); |
layer->setXPosition(length); |
if (pair) |
- layer->setBackgroundXOrigin(*(pair->first())); |
+ layer->setBackgroundXOrigin(toCSSPrimitiveValue(*pair->first())); |
} |
void CSSToStyleMap::mapFillYPosition(StyleResolverState& state, FillLayer* layer, CSSValue value) |
@@ -239,16 +239,16 @@ void CSSToStyleMap::mapFillYPosition(StyleResolverState& state, FillLayer* layer |
if (!value.isPrimitiveValue()) |
return; |
- CSSPrimitiveValue* primitiveValue = &toCSSPrimitiveValue(value); |
- Pair* pair = primitiveValue->getPairValue(); |
+ CSSPrimitiveValue primitiveValue = toCSSPrimitiveValue(value); |
+ Pair* pair = primitiveValue.getPairValue(); |
if (pair) |
- primitiveValue = pair->second(); |
+ primitiveValue = toCSSPrimitiveValue(*pair->second()); |
- Length length = primitiveValue->convertToLength(state.cssToLengthConversionData()); |
+ Length length = primitiveValue.convertToLength(state.cssToLengthConversionData()); |
layer->setYPosition(length); |
if (pair) |
- layer->setBackgroundYOrigin(*(pair->first())); |
+ layer->setBackgroundYOrigin(toCSSPrimitiveValue(*pair->first())); |
} |
void CSSToStyleMap::mapFillMaskSourceType(StyleResolverState&, FillLayer* layer, CSSValue value) |
@@ -336,7 +336,7 @@ double CSSToStyleMap::mapAnimationIterationCount(CSSValue value) |
{ |
if (value.isInitialValue()) |
return CSSAnimationData::initialIterationCount(); |
- CSSPrimitiveValue& primitiveValue = toCSSPrimitiveValue(value); |
+ CSSPrimitiveValue primitiveValue = toCSSPrimitiveValue(value); |
if (primitiveValue.getValueID() == CSSValueInfinite) |
return std::numeric_limits<double>::infinity(); |
return primitiveValue.getFloatValue(); |
@@ -346,7 +346,7 @@ AtomicString CSSToStyleMap::mapAnimationName(CSSValue value) |
{ |
if (value.isInitialValue()) |
return CSSAnimationData::initialName(); |
- CSSPrimitiveValue& primitiveValue = toCSSPrimitiveValue(value); |
+ CSSPrimitiveValue primitiveValue = toCSSPrimitiveValue(value); |
if (primitiveValue.getValueID() == CSSValueNone) |
return CSSAnimationData::initialName(); |
return AtomicString(primitiveValue.getStringValue()); |
@@ -366,7 +366,7 @@ CSSTransitionData::TransitionProperty CSSToStyleMap::mapAnimationProperty(CSSVal |
{ |
if (value.isInitialValue()) |
return CSSTransitionData::initialProperty(); |
- CSSPrimitiveValue& primitiveValue = toCSSPrimitiveValue(value); |
+ CSSPrimitiveValue primitiveValue = toCSSPrimitiveValue(value); |
if (primitiveValue.isCustomIdent()) |
return CSSTransitionData::TransitionProperty(primitiveValue.getStringValue()); |
if (primitiveValue.getValueID() == CSSValueAll) |
@@ -384,7 +384,7 @@ PassRefPtr<TimingFunction> CSSToStyleMap::mapAnimationTimingFunction(CSSValue va |
// properties in shorthands to initial. |
if (value.isPrimitiveValue()) { |
- CSSPrimitiveValue& primitiveValue = toCSSPrimitiveValue(value); |
+ CSSPrimitiveValue primitiveValue = toCSSPrimitiveValue(value); |
switch (primitiveValue.getValueID()) { |
case CSSValueLinear: |
return LinearTimingFunction::shared(); |
@@ -495,29 +495,29 @@ void CSSToStyleMap::mapNinePieceImageSlice(StyleResolverState&, NullableCSSValue |
// Set up a length box to represent our image slices. |
LengthBox box; |
Quad* slices = borderImageSlice->slices(); |
- if (slices->top()->isPercentage()) |
- box.m_top = Length(slices->top()->getDoubleValue(), Percent); |
+ if (slices->top().isPercentage()) |
+ box.m_top = Length(slices->top().getDoubleValue(), Percent); |
else |
- box.m_top = Length(slices->top()->getIntValue(), Fixed); |
- if (slices->bottom()->isPercentage()) |
- box.m_bottom = Length(slices->bottom()->getDoubleValue(), Percent); |
+ box.m_top = Length(slices->top().getIntValue(), Fixed); |
+ if (slices->bottom().isPercentage()) |
+ box.m_bottom = Length(slices->bottom().getDoubleValue(), Percent); |
else |
- box.m_bottom = Length(slices->bottom()->getIntValue(), Fixed); |
- if (slices->left()->isPercentage()) |
- box.m_left = Length(slices->left()->getDoubleValue(), Percent); |
+ box.m_bottom = Length(slices->bottom().getIntValue(), Fixed); |
+ if (slices->left().isPercentage()) |
+ box.m_left = Length(slices->left().getDoubleValue(), Percent); |
else |
- box.m_left = Length(slices->left()->getIntValue(), Fixed); |
- if (slices->right()->isPercentage()) |
- box.m_right = Length(slices->right()->getDoubleValue(), Percent); |
+ box.m_left = Length(slices->left().getIntValue(), Fixed); |
+ if (slices->right().isPercentage()) |
+ box.m_right = Length(slices->right().getDoubleValue(), Percent); |
else |
- box.m_right = Length(slices->right()->getIntValue(), Fixed); |
+ box.m_right = Length(slices->right().getIntValue(), Fixed); |
image.setImageSlices(box); |
// Set our fill mode. |
image.setFill(borderImageSlice->m_fill); |
} |
-static BorderImageLength toBorderImageLength(CSSPrimitiveValue& value, const CSSToLengthConversionData& conversionData) |
+static BorderImageLength toBorderImageLength(CSSPrimitiveValue value, const CSSToLengthConversionData& conversionData) |
{ |
if (value.isNumber()) |
return value.getDoubleValue(); |
@@ -533,14 +533,14 @@ BorderImageLengthBox CSSToStyleMap::mapNinePieceImageQuad(StyleResolverState& st |
if (!value || !value->isPrimitiveValue()) |
return BorderImageLengthBox(Length(Auto)); |
- Quad* slices = toCSSPrimitiveValue(value)->getQuadValue(); |
+ Quad* slices = toCSSPrimitiveValue(*value).getQuadValue(); |
// Set up a border image length box to represent our image slices. |
return BorderImageLengthBox( |
- toBorderImageLength(*slices->top(), state.cssToLengthConversionData()), |
- toBorderImageLength(*slices->right(), state.cssToLengthConversionData()), |
- toBorderImageLength(*slices->bottom(), state.cssToLengthConversionData()), |
- toBorderImageLength(*slices->left(), state.cssToLengthConversionData())); |
+ toBorderImageLength(slices->top(), state.cssToLengthConversionData()), |
+ toBorderImageLength(slices->right(), state.cssToLengthConversionData()), |
+ toBorderImageLength(slices->bottom(), state.cssToLengthConversionData()), |
+ toBorderImageLength(slices->left(), state.cssToLengthConversionData())); |
} |
void CSSToStyleMap::mapNinePieceImageRepeat(StyleResolverState&, NullableCSSValue value, NinePieceImage& image) |
@@ -548,13 +548,13 @@ void CSSToStyleMap::mapNinePieceImageRepeat(StyleResolverState&, NullableCSSValu |
if (!value || !value->isPrimitiveValue()) |
return; |
- CSSPrimitiveValue* primitiveValue = toCSSPrimitiveValue(value); |
- Pair* pair = primitiveValue->getPairValue(); |
+ CSSPrimitiveValue primitiveValue = toCSSPrimitiveValue(*value); |
+ Pair* pair = primitiveValue.getPairValue(); |
if (!pair || !pair->first() || !pair->second()) |
return; |
- CSSValueID firstIdentifier = pair->first()->getValueID(); |
- CSSValueID secondIdentifier = pair->second()->getValueID(); |
+ CSSValueID firstIdentifier = toCSSPrimitiveValue(*pair->first()).getValueID(); |
+ CSSValueID secondIdentifier = toCSSPrimitiveValue(*pair->second()).getValueID(); |
ENinePieceImageRule horizontalRule; |
switch (firstIdentifier) { |