Created attachment 178884 [details] repro There's a note in SVGRenderStyle::diff(): // Shadow changes require relayouts, as they affect the repaint rects. And it then returns StyleDifferenceLayout. Then, RenderSVGModelObject::styleWillChange() (and friends) marks the boundaries dirty when it gets that StyleDifferenceLayout. But! We also need to our children's boundaries as dirty, since the parent's shadow is baked into them. I have a patch to recursively dirty children's boundaries if the old and/or new style has a -webkit-svg-shadow which fixes the attached testcase. Not sure if that hammer is too big, though. <rdar://problem/12821080>
Created attachment 178912 [details] patch Next, to write a test.
Created attachment 178924 [details] patch
http://trac.webkit.org/changeset/137393