Bug 37575

Summary: RenderSVGResource <-> id mapping should be cached
Product: WebKit Reporter: Nikolas Zimmermann <zimmermann>
Component: SVGAssignee: Nikolas Zimmermann <zimmermann>
Status: RESOLVED FIXED    
Severity: Normal CC: abarth, bdakin, eric, krit, webkit.review.bot
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: PC   
OS: OS X 10.5   
Bug Depends on:    
Bug Blocks: 36564    
Attachments:
Description Flags
Patch bdakin: review+

Description Nikolas Zimmermann 2010-04-14 08:09:07 PDT
RenderSVGResource looku
To lookup RenderSVGResources for a certain RenderObject, we're using getElementById, which has been identified as a bottle-neck.
We discussed to cache RenderSVGResource pointers in the SVGRenderStyle, though that's dangerous, as we have to be sure we're not referencing dangling pointers.

So I'll propose a HashMap<String, RenderSVGresource*> addition in SVGDocumentExtensions. Patch following.
Comment 1 Nikolas Zimmermann 2010-04-15 05:56:32 PDT
Created attachment 53426 [details]
Patch
Comment 2 Nikolas Zimmermann 2010-04-15 11:33:09 PDT
Committed r57659: <http://trac.webkit.org/changeset/57659>
Comment 3 WebKit Review Bot 2010-04-15 12:03:53 PDT
http://trac.webkit.org/changeset/57659 might have broken Qt Linux Release minimal