[webkit-reviews] review denied: [Bug 63390] SVG1.1SE test text-tref-03-b.svg fails : [Attachment 98762] Patch

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Mon Jun 27 12:45:47 PDT 2011


Nikolas Zimmermann <zimmermann at kde.org> has denied Rob Buis
<rwlbuis at gmail.com>'s request for review:
Bug 63390: SVG1.1SE test text-tref-03-b.svg fails
https://bugs.webkit.org/show_bug.cgi?id=63390

Attachment 98762: Patch
https://bugs.webkit.org/attachment.cgi?id=98762&action=review

------- Additional Comments from Nikolas Zimmermann <zimmermann at kde.org>
View in context: https://bugs.webkit.org/attachment.cgi?id=98762&action=review

Looks good to me except some issues:

> Source/WebCore/svg/SVGTRefElement.cpp:131
> +	   String id = SVGURIReference::getTarget(href());
> +	   Element* target = treeScope()->getElementById(id);
> +	   if (!target) {
> +	       document()->accessSVGExtensions()->addPendingResource(id, this);

> +	       return;
> +	   }

That shouldn't be needed, as svgAttributeChanged takes care of that already.

> Source/WebCore/svg/SVGTRefElement.cpp:159
> +	   String id = SVGURIReference::getTarget(href());
> +	   Element* oldTarget = treeScope()->getElementById(id);
> +	   if (m_eventListener) {
> +	       m_eventListener->removeFromTarget(oldTarget);
> +	       m_eventListener = 0;

What happens now: the event listener is created while parsing the <tref> in
parseMappedAttribute, right afterwards svgAttributeChanged is called and you're
doing the work again.
The code in parseMappedAttribute seems superfluous now, you now handle SVG/XML
dom changes both through svgAttributeChanged.


More information about the webkit-reviews mailing list