Bug 12849
Summary: | SVG renderers update at paint time instead of style resolution time | ||
---|---|---|---|
Product: | WebKit | Reporter: | Geoffrey Garen <ggaren> |
Component: | SVG | Assignee: | Nobody <webkit-unassigned> |
Status: | RESOLVED INVALID | ||
Severity: | Normal | ||
Priority: | P2 | ||
Version: | 420+ | ||
Hardware: | Mac | ||
OS: | OS X 10.4 |
Geoffrey Garen
This causes DumpRenderTree to dump incorrect results for many SVGs unless you force it to paint.
I don't know enough about rendering to know what other kinds of problems this can cause. I suspect it's a big performance problem to update renderers every time you paint, instead of when you resolve style.
Attachments | ||
---|---|---|
Add attachment proposed patch, testcase, etc. |
Geoffrey Garen
Dave Hyatt and I took a quick look at this today. One example of the problem is in SVGPaintServerSolidCG.cpp. When painting text, SVG changes the underlying style object. Dave says that if the style were shared, doing so could cause other elements on the page to misrender.
Geoffrey Garen
However, Dave doesn't think that this is a security/crasher type issue.
Eric Seidel (no email)
Yeah, the modification of the style for the text drawing is really ugly. There are other times where renderers update at the wrong time. This is a holdover from the KDOM/KCanvas days where there was no such thing as "layout" time, and all of the layout was done in the DOM elements instead of the Renderers anyway.
Nikolas Zimmermann
We probably still do this. The text issues are fixed by now. This is a rather nebulous bug and probably should just be closed.