Index: Source/core/svg/SVGColor.h |
diff --git a/Source/core/svg/SVGColor.h b/Source/core/svg/SVGColor.h |
index dd820fd1fef41f7cd4a8a55ca8e336bbd37db68b..3ea3d7ea4bc756b0431961c8c059ad3cb47a1a6b 100644 |
--- a/Source/core/svg/SVGColor.h |
+++ b/Source/core/svg/SVGColor.h |
@@ -42,7 +42,7 @@ public: |
static PassRefPtr<SVGColor> createFromString(const String& rgbColor) |
{ |
RefPtr<SVGColor> color = adoptRef(new SVGColor(SVG_COLORTYPE_RGBCOLOR)); |
- color->setColor(colorFromRGBColorString(rgbColor)); |
+ color->m_valid = colorFromRGBColorString(rgbColor, color->m_color); |
return color.release(); |
} |
@@ -62,7 +62,13 @@ public: |
const SVGColorType& colorType() const { return m_colorType; } |
PassRefPtr<RGBColor> rgbColor() const; |
- static Color colorFromRGBColorString(const String&); |
+ static bool colorFromRGBColorString(const String&, Color&); |
+ static Color colorFromRGBColorString(const String& s) |
+ { |
+ Color color; |
+ colorFromRGBColorString(s, color); |
+ return color; |
+ } |
void setRGBColor(const String& rgbColor, ExceptionCode&); |
void setRGBColorICCColor(const String& rgbColor, const String& iccColor, ExceptionCode&); |
@@ -82,7 +88,7 @@ protected: |
SVGColor(ClassType, const SVGColorType&); |
SVGColor(ClassType, const SVGColor& cloneFrom); |
- void setColor(const Color& color) { m_color = color; } |
+ void setColor(const Color& color) { m_color = color; m_valid = true; } |
void setColorType(const SVGColorType& type) { m_colorType = type; } |
private: |
@@ -90,6 +96,7 @@ private: |
Color m_color; |
SVGColorType m_colorType; |
+ bool m_valid; |
}; |
} // namespace WebCore |