| Index: third_party/WebKit/Source/core/svg/graphics/filters/SVGFilterBuilder.cpp
|
| diff --git a/third_party/WebKit/Source/core/svg/graphics/filters/SVGFilterBuilder.cpp b/third_party/WebKit/Source/core/svg/graphics/filters/SVGFilterBuilder.cpp
|
| index ba326a962ac16bc8be0de004b5bfe18e22f5a172..b88584ac69d9298d4b21ba3daa3aa9bc9f2c172f 100644
|
| --- a/third_party/WebKit/Source/core/svg/graphics/filters/SVGFilterBuilder.cpp
|
| +++ b/third_party/WebKit/Source/core/svg/graphics/filters/SVGFilterBuilder.cpp
|
| @@ -158,6 +158,11 @@ static EColorInterpolation colorInterpolationForElement(SVGElement& element, ECo
|
| return parentColorInterpolation;
|
| }
|
|
|
| +ColorSpace SVGFilterBuilder::resolveColorSpace(EColorInterpolation colorInterpolation)
|
| +{
|
| + return colorInterpolation == CI_LINEARRGB ? ColorSpaceLinearRGB : ColorSpaceDeviceRGB;
|
| +}
|
| +
|
| void SVGFilterBuilder::buildGraph(Filter* filter, SVGFilterElement& filterElement, const FloatRect& referenceBox)
|
| {
|
| EColorInterpolation filterColorInterpolation = colorInterpolationForElement(filterElement, CI_AUTO);
|
| @@ -177,7 +182,7 @@ void SVGFilterBuilder::buildGraph(Filter* filter, SVGFilterElement& filterElemen
|
| effectElement->setStandardAttributes(effect);
|
| effect->setEffectBoundaries(SVGLengthContext::resolveRectangle<SVGFilterPrimitiveStandardAttributes>(effectElement, filterElement.primitiveUnits()->currentValue()->enumValue(), referenceBox));
|
| EColorInterpolation colorInterpolation = colorInterpolationForElement(*effectElement, filterColorInterpolation);
|
| - effect->setOperatingColorSpace(colorInterpolation == CI_LINEARRGB ? ColorSpaceLinearRGB : ColorSpaceDeviceRGB);
|
| + effect->setOperatingColorSpace(resolveColorSpace(colorInterpolation));
|
| if (effectElement->taintsOrigin(effect->inputsTaintOrigin()))
|
| effect->setOriginTainted();
|
|
|
|
|