| Index: Source/core/rendering/svg/RenderSVGResourceFilter.cpp
 | 
| diff --git a/Source/core/rendering/svg/RenderSVGResourceFilter.cpp b/Source/core/rendering/svg/RenderSVGResourceFilter.cpp
 | 
| index 2ab6310483a9bf9121250a2aa1cdb2a0e4b7113b..1f0913e062b36455542aa2e136fe2a16a9cc631b 100644
 | 
| --- a/Source/core/rendering/svg/RenderSVGResourceFilter.cpp
 | 
| +++ b/Source/core/rendering/svg/RenderSVGResourceFilter.cpp
 | 
| @@ -100,10 +100,10 @@ PassRefPtr<SVGFilterBuilder> RenderSVGResourceFilter::buildPrimitives(SVGFilter*
 | 
|          }
 | 
|          builder->appendEffectToEffectReferences(effect, effectElement->renderer());
 | 
|          effectElement->setStandardAttributes(effect.get());
 | 
| -        effect->setEffectBoundaries(SVGLengthContext::resolveRectangle<SVGFilterPrimitiveStandardAttributes>(effectElement, filterElement->primitiveUnits(), targetBoundingBox));
 | 
| +        effect->setEffectBoundaries(SVGLengthContext::resolveRectangle<SVGFilterPrimitiveStandardAttributes>(effectElement, filterElement->primitiveUnitsCurrentValue(), targetBoundingBox));
 | 
|          effect->setOperatingColorSpace(
 | 
|              effectElement->renderer()->style()->svgStyle()->colorInterpolationFilters() == CI_LINEARRGB ? ColorSpaceLinearRGB : ColorSpaceDeviceRGB);
 | 
| -        builder->add(effectElement->result(), effect);
 | 
| +        builder->add(effectElement->resultCurrentValue(), effect);
 | 
|      }
 | 
|      return builder.release();
 | 
|  }
 | 
| @@ -140,7 +140,7 @@ bool RenderSVGResourceFilter::applyResource(RenderObject* object, RenderStyle*,
 | 
|      FloatRect targetBoundingBox = object->objectBoundingBox();
 | 
|  
 | 
|      SVGFilterElement* filterElement = static_cast<SVGFilterElement*>(node());
 | 
| -    filterData->boundaries = SVGLengthContext::resolveRectangle<SVGFilterElement>(filterElement, filterElement->filterUnits(), targetBoundingBox);
 | 
| +    filterData->boundaries = SVGLengthContext::resolveRectangle<SVGFilterElement>(filterElement, filterElement->filterUnitsCurrentValue(), targetBoundingBox);
 | 
|      if (filterData->boundaries.isEmpty())
 | 
|          return false;
 | 
|  
 | 
| @@ -160,7 +160,7 @@ bool RenderSVGResourceFilter::applyResource(RenderObject* object, RenderStyle*,
 | 
|      FloatRect absoluteDrawingRegion = filterData->shearFreeAbsoluteTransform.mapRect(filterData->drawingRegion);
 | 
|  
 | 
|      // Create the SVGFilter object.
 | 
| -    bool primitiveBoundingBoxMode = filterElement->primitiveUnits() == SVGUnitTypes::SVG_UNIT_TYPE_OBJECTBOUNDINGBOX;
 | 
| +    bool primitiveBoundingBoxMode = filterElement->primitiveUnitsCurrentValue() == SVGUnitTypes::SVG_UNIT_TYPE_OBJECTBOUNDINGBOX;
 | 
|      filterData->filter = SVGFilter::create(filterData->shearFreeAbsoluteTransform, absoluteDrawingRegion, targetBoundingBox, filterData->boundaries, primitiveBoundingBoxMode);
 | 
|  
 | 
|      // Create all relevant filter primitives.
 | 
| @@ -172,8 +172,8 @@ bool RenderSVGResourceFilter::applyResource(RenderObject* object, RenderStyle*,
 | 
|      // Also see http://www.w3.org/TR/SVG/filters.html#FilterEffectsRegion
 | 
|      FloatSize scale(1, 1);
 | 
|      if (filterElement->hasAttribute(SVGNames::filterResAttr)) {
 | 
| -        scale.setWidth(filterElement->filterResX() / absoluteFilterBoundaries.width());
 | 
| -        scale.setHeight(filterElement->filterResY() / absoluteFilterBoundaries.height());
 | 
| +        scale.setWidth(filterElement->filterResXCurrentValue() / absoluteFilterBoundaries.width());
 | 
| +        scale.setHeight(filterElement->filterResYCurrentValue() / absoluteFilterBoundaries.height());
 | 
|      }
 | 
|  
 | 
|      if (scale.isEmpty())
 | 
| @@ -312,7 +312,7 @@ void RenderSVGResourceFilter::postApplyResource(RenderObject* object, GraphicsCo
 | 
|  FloatRect RenderSVGResourceFilter::resourceBoundingBox(RenderObject* object)
 | 
|  {
 | 
|      if (SVGFilterElement* element = static_cast<SVGFilterElement*>(node()))
 | 
| -        return SVGLengthContext::resolveRectangle<SVGFilterElement>(element, element->filterUnits(), object->objectBoundingBox());
 | 
| +        return SVGLengthContext::resolveRectangle<SVGFilterElement>(element, element->filterUnitsCurrentValue(), object->objectBoundingBox());
 | 
|  
 | 
|      return FloatRect();
 | 
|  }
 | 
| 
 |