Index: Source/core/svg/SVGFEColorMatrixElement.cpp |
diff --git a/Source/core/svg/SVGFEColorMatrixElement.cpp b/Source/core/svg/SVGFEColorMatrixElement.cpp |
index c65485b238e0b3a0b165d7a7b56c8a9c4f02f219..ec17b18a56a870e2dda7375f755e54f51405fbda 100644 |
--- a/Source/core/svg/SVGFEColorMatrixElement.cpp |
+++ b/Source/core/svg/SVGFEColorMatrixElement.cpp |
@@ -102,7 +102,7 @@ bool SVGFEColorMatrixElement::setFilterEffectAttribute(FilterEffect* effect, con |
if (attrName == SVGNames::typeAttr) |
return colorMatrix->setType(typeCurrentValue()); |
if (attrName == SVGNames::valuesAttr) |
- return colorMatrix->setValues(valuesCurrentValue()); |
+ return colorMatrix->setValues(valuesCurrentValue().toFloatVector()); |
ASSERT_NOT_REACHED(); |
return false; |
@@ -157,13 +157,15 @@ PassRefPtr<FilterEffect> SVGFEColorMatrixElement::build(SVGFilterBuilder* filter |
break; |
} |
} else { |
- filterValues = valuesCurrentValue(); |
- unsigned size = filterValues.size(); |
+ SVGNumberList& values = valuesCurrentValue(); |
+ unsigned size = values.size(); |
if ((filterType == FECOLORMATRIX_TYPE_MATRIX && size != 20) |
|| (filterType == FECOLORMATRIX_TYPE_HUEROTATE && size != 1) |
|| (filterType == FECOLORMATRIX_TYPE_SATURATE && size != 1)) |
return 0; |
+ |
+ filterValues = values.toFloatVector(); |
} |
RefPtr<FilterEffect> effect = FEColorMatrix::create(filter, filterType, filterValues); |