| Index: Source/core/svg/SVGFEImageElement.cpp
|
| diff --git a/Source/core/svg/SVGFEImageElement.cpp b/Source/core/svg/SVGFEImageElement.cpp
|
| index c3fcf1ce0a0a19c13c14df7aff457e4bf7ff2c58..3f2b9a8b2b8529b136bf74f7566f8234bdd1da7a 100644
|
| --- a/Source/core/svg/SVGFEImageElement.cpp
|
| +++ b/Source/core/svg/SVGFEImageElement.cpp
|
| @@ -35,19 +35,19 @@
|
| namespace WebCore {
|
|
|
| // Animated property definitions
|
| -DEFINE_ANIMATED_STRING(SVGFEImageElement, XLinkNames::hrefAttr, Href, href)
|
|
|
| BEGIN_REGISTER_ANIMATED_PROPERTIES(SVGFEImageElement)
|
| - REGISTER_LOCAL_ANIMATED_PROPERTY(href)
|
| REGISTER_PARENT_ANIMATED_PROPERTIES(SVGFilterPrimitiveStandardAttributes)
|
| END_REGISTER_ANIMATED_PROPERTIES
|
|
|
| inline SVGFEImageElement::SVGFEImageElement(Document& document)
|
| : SVGFilterPrimitiveStandardAttributes(SVGNames::feImageTag, document)
|
| , m_preserveAspectRatio(SVGAnimatedPreserveAspectRatio::create(this, SVGNames::preserveAspectRatioAttr, SVGPreserveAspectRatio::create()))
|
| + , m_href(SVGAnimatedString::create(this, XLinkNames::hrefAttr, SVGString::create()))
|
| {
|
| ScriptWrappable::init(this);
|
| addToPropertyMap(m_preserveAspectRatio);
|
| + addToPropertyMap(m_href);
|
| registerAnimatedPropertiesForSVGFEImageElement();
|
| }
|
|
|
| @@ -81,7 +81,7 @@ void SVGFEImageElement::clearResourceReferences()
|
|
|
| void SVGFEImageElement::fetchImageResource()
|
| {
|
| - FetchRequest request(ResourceRequest(ownerDocument()->completeURL(hrefCurrentValue())), localName());
|
| + FetchRequest request(ResourceRequest(ownerDocument()->completeURL(m_href->currentValue()->value())), localName());
|
| m_cachedImage = document().fetcher()->fetchImage(request);
|
|
|
| if (m_cachedImage)
|
| @@ -95,7 +95,7 @@ void SVGFEImageElement::buildPendingResource()
|
| return;
|
|
|
| AtomicString id;
|
| - Element* target = SVGURIReference::targetElementFromIRIString(hrefCurrentValue(), document(), &id);
|
| + Element* target = SVGURIReference::targetElementFromIRIString(m_href->currentValue()->value(), document(), &id);
|
| if (!target) {
|
| if (id.isEmpty())
|
| fetchImageResource();
|
| @@ -133,7 +133,8 @@ void SVGFEImageElement::parseAttribute(const QualifiedName& name, const AtomicSt
|
|
|
| if (name == SVGNames::preserveAspectRatioAttr) {
|
| m_preserveAspectRatio->setBaseValueAsString(value, parseError);
|
| - } else if (SVGURIReference::parseAttribute(name, value)) {
|
| + } else if (name.matches(XLinkNames::hrefAttr)) {
|
| + m_href->setBaseValueAsString(value, parseError);
|
| } else {
|
| ASSERT_NOT_REACHED();
|
| }
|
| @@ -196,7 +197,7 @@ PassRefPtr<FilterEffect> SVGFEImageElement::build(SVGFilterBuilder*, Filter* fil
|
| {
|
| if (m_cachedImage)
|
| return FEImage::createWithImage(filter, m_cachedImage->imageForRenderer(renderer()), m_preserveAspectRatio->currentValue());
|
| - return FEImage::createWithIRIReference(filter, document(), hrefCurrentValue(), m_preserveAspectRatio->currentValue());
|
| + return FEImage::createWithIRIReference(filter, document(), m_href->currentValue()->value(), m_preserveAspectRatio->currentValue());
|
| }
|
|
|
| }
|
|
|