summaryrefslogtreecommitdiffstats
path: root/WebCore/svg/SVGRadialGradientElement.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'WebCore/svg/SVGRadialGradientElement.cpp')
-rw-r--r--WebCore/svg/SVGRadialGradientElement.cpp13
1 files changed, 10 insertions, 3 deletions
diff --git a/WebCore/svg/SVGRadialGradientElement.cpp b/WebCore/svg/SVGRadialGradientElement.cpp
index 2a97b9d..a970817 100644
--- a/WebCore/svg/SVGRadialGradientElement.cpp
+++ b/WebCore/svg/SVGRadialGradientElement.cpp
@@ -83,7 +83,12 @@ void SVGRadialGradientElement::svgAttributeChanged(const QualifiedName& attrName
|| attrName == SVGNames::fyAttr
|| attrName == SVGNames::rAttr) {
updateRelativeLengthsInformation();
- invalidateResourceClients();
+
+ RenderObject* object = renderer();
+ if (!object)
+ return;
+
+ object->setNeedsLayout(true);
}
}
@@ -168,8 +173,10 @@ RadialGradientAttributes SVGRadialGradientElement::collectGradientProperties()
current = static_cast<SVGGradientElement*>(refNode);
// Cycle detection
- if (processedGradients.contains(current))
- return RadialGradientAttributes();
+ if (processedGradients.contains(current)) {
+ current = 0;
+ break;
+ }
isRadial = current->hasTagName(SVGNames::radialGradientTag);
} else