diff options
author | Kristian Monsen <kristianm@google.com> | 2010-09-30 15:42:16 +0100 |
---|---|---|
committer | Steve Block <steveblock@google.com> | 2010-10-07 10:59:29 +0100 |
commit | bec39347bb3bb5bf1187ccaf471d26247f28b585 (patch) | |
tree | 56bdc4c2978fbfd3d79d0d36d5d6c640ecc09cc8 /WebCore/css/SVGCSSStyleSelector.cpp | |
parent | 90b7966e7815b262cd19ac25f03aaad9b21fdc06 (diff) | |
download | external_webkit-bec39347bb3bb5bf1187ccaf471d26247f28b585.zip external_webkit-bec39347bb3bb5bf1187ccaf471d26247f28b585.tar.gz external_webkit-bec39347bb3bb5bf1187ccaf471d26247f28b585.tar.bz2 |
Merge WebKit at r68651 : Initial merge by git.
Change-Id: I3d6bff59f17eedd6722723354f386fec9be8ad12
Diffstat (limited to 'WebCore/css/SVGCSSStyleSelector.cpp')
-rw-r--r-- | WebCore/css/SVGCSSStyleSelector.cpp | 34 |
1 files changed, 17 insertions, 17 deletions
diff --git a/WebCore/css/SVGCSSStyleSelector.cpp b/WebCore/css/SVGCSSStyleSelector.cpp index b8cc4f7..5ddaf99 100644 --- a/WebCore/css/SVGCSSStyleSelector.cpp +++ b/WebCore/css/SVGCSSStyleSelector.cpp @@ -48,15 +48,17 @@ #define HANDLE_INHERIT(prop, Prop) \ if (isInherit) \ -{\ - svgstyle->set##Prop(m_parentStyle->svgStyle()->prop());\ - return;\ +{ \ + svgstyle->set##Prop(m_parentStyle->svgStyle()->prop()); \ + return; \ } #define HANDLE_INHERIT_AND_INITIAL(prop, Prop) \ HANDLE_INHERIT(prop, Prop) \ -else if (isInitial) \ - svgstyle->set##Prop(SVGRenderStyle::initial##Prop()); +if (isInitial) { \ + svgstyle->set##Prop(SVGRenderStyle::initial##Prop()); \ + return; \ +} namespace WebCore { @@ -90,15 +92,13 @@ static int angleToGlyphOrientation(float angle) return -1; } -static Color colorFromSVGColorCSSValue(CSSValue* value, const Color& fgColor) +static Color colorFromSVGColorCSSValue(SVGColor* svgColor, const Color& fgColor) { - ASSERT(value->isSVGColor()); - SVGColor* c = static_cast<SVGColor*>(value); Color color; - if (c->colorType() == SVGColor::SVG_COLORTYPE_CURRENTCOLOR) + if (svgColor->colorType() == SVGColor::SVG_COLORTYPE_CURRENTCOLOR) color = fgColor; else - color = c->color(); + color = svgColor->color(); return color; } @@ -468,13 +468,15 @@ void CSSStyleSelector::applySVGProperty(int id, CSSValue* value) case CSSPropertyStopColor: { HANDLE_INHERIT_AND_INITIAL(stopColor, StopColor); - svgstyle->setStopColor(colorFromSVGColorCSSValue(value, m_style->color())); + if (value->isSVGColor()) + svgstyle->setStopColor(colorFromSVGColorCSSValue(static_cast<SVGColor*>(value), m_style->color())); break; } case CSSPropertyLightingColor: { HANDLE_INHERIT_AND_INITIAL(lightingColor, LightingColor); - svgstyle->setLightingColor(colorFromSVGColorCSSValue(value, m_style->color())); + if (value->isSVGColor()) + svgstyle->setLightingColor(colorFromSVGColorCSSValue(static_cast<SVGColor*>(value), m_style->color())); break; } case CSSPropertyFloodOpacity: @@ -497,11 +499,9 @@ void CSSStyleSelector::applySVGProperty(int id, CSSValue* value) } case CSSPropertyFloodColor: { - if (isInitial) { - svgstyle->setFloodColor(SVGRenderStyle::initialFloodColor()); - return; - } - svgstyle->setFloodColor(colorFromSVGColorCSSValue(value, m_style->color())); + HANDLE_INHERIT_AND_INITIAL(floodColor, FloodColor); + if (value->isSVGColor()) + svgstyle->setFloodColor(colorFromSVGColorCSSValue(static_cast<SVGColor*>(value), m_style->color())); break; } case CSSPropertyGlyphOrientationHorizontal: |