Summary: | WebKit+SVG fails to handle xlink:href on gradients | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Product: | WebKit | Reporter: | Rob Buis <rwlbuis> | ||||||||
Component: | SVG | Assignee: | Julien Palmas <julien.palmas> | ||||||||
Status: | RESOLVED FIXED | ||||||||||
Severity: | Normal | Keywords: | HasReduction | ||||||||
Priority: | P4 | ||||||||||
Version: | 420+ | ||||||||||
Hardware: | Mac | ||||||||||
OS: | OS X 10.4 | ||||||||||
URL: | http://en.wikipedia.org/wiki/Svg | ||||||||||
Bug Depends on: | |||||||||||
Bug Blocks: | 6060 | ||||||||||
Attachments: |
|
Description
Rob Buis
2005-12-12 11:30:46 PST
I believe this is related to the hackish way in which we currently do style resolution for <stop> elements. However, I see: 2005-12-12 11:26:15.712 Safari[25820] Warning, no gradient stops, gradient (0x13da4be4) will be all black! in the console, which indicates this might not be a style problem at all. Created attachment 5063 [details]
Reduced testcase
Created attachment 5064 [details]
Further reduction
Created attachment 5119 [details]
Simple patch
The referenced gradient (the one containing the stops) was never properly built
(ie: addStop never called).
Hense the gradient using xlink:href did not inherit any stop.
Rendering of gradients is much improved with this patch. Also fixes display (but not performance) of http://me.in-berlin.de/~darwin/svg/incoming/gearflowers.svg as referred to by 6060. Comment on attachment 5119 [details]
Simple patch
Patch looks fine.
But there's no ChangeLog and no regression test -- we would like to have both
of those.
Comment on attachment 5119 [details]
Simple patch
This works, but I think we can do this better by removing the whole
resourceNotification() system all together. I have a patch for that and will
post it. Thanks for such a great diagnosis!
This works again. Although it's still not a nice as it should be. |