summaryrefslogtreecommitdiffstats
path: root/WebCore/css/CSSCursorImageValue.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'WebCore/css/CSSCursorImageValue.cpp')
-rw-r--r--WebCore/css/CSSCursorImageValue.cpp9
1 files changed, 9 insertions, 0 deletions
diff --git a/WebCore/css/CSSCursorImageValue.cpp b/WebCore/css/CSSCursorImageValue.cpp
index 68b0491..ddd3e6b 100644
--- a/WebCore/css/CSSCursorImageValue.cpp
+++ b/WebCore/css/CSSCursorImageValue.cpp
@@ -70,6 +70,7 @@ CSSCursorImageValue::~CSSCursorImageValue()
for (; it != end; ++it) {
SVGElement* referencedElement = *it;
+ referencedElement->setCursorImageValue(0);
if (SVGCursorElement* cursorElement = resourceReferencedByCursorElement(url, referencedElement->document()))
cursorElement->removeClient(referencedElement);
}
@@ -98,6 +99,7 @@ bool CSSCursorImageValue::updateIfSVGCursorIsUsed(Element* element)
SVGElement* svgElement = static_cast<SVGElement*>(element);
m_referencedElements.add(svgElement);
+ svgElement->setCursorImageValue(this);
cursorElement->addClient(svgElement);
return true;
}
@@ -120,4 +122,11 @@ StyleCachedImage* CSSCursorImageValue::cachedImage(DocLoader* loader)
return CSSImageValue::cachedImage(loader, url);
}
+#if ENABLE(SVG)
+void CSSCursorImageValue::removeReferencedElement(SVGElement* element)
+{
+ m_referencedElements.remove(element);
+}
+#endif
+
} // namespace WebCore