| Index: Source/WebCore/rendering/svg/SVGTextLayoutAttributesBuilder.cpp
|
| ===================================================================
|
| --- Source/WebCore/rendering/svg/SVGTextLayoutAttributesBuilder.cpp (revision 90861)
|
| +++ Source/WebCore/rendering/svg/SVGTextLayoutAttributesBuilder.cpp (working copy)
|
| @@ -39,7 +39,11 @@
|
| {
|
| ASSERT(textRoot);
|
|
|
| - // Build list of x/y/dx/dy/rotate values for each subtree element that may define these values (tspan/textPath etc).
|
| + // We always clear our current attribute as we don't want to keep any stale ones that could survive DOM modification.
|
| + Vector<SVGTextLayoutAttributes>& allAttributes = textRoot->layoutAttributes();
|
| + allAttributes.clear();
|
| +
|
| + // Build list of x/y/dx/dy/rotate values for each subtree element that may define these values (tspan/textPath etc).
|
| unsigned atCharacter = 0;
|
| UChar lastCharacter = '\0';
|
| collectTextPositioningElements(textRoot, atCharacter, lastCharacter);
|
| @@ -51,8 +55,6 @@
|
| buildLayoutAttributesForAllCharacters(textRoot, atCharacter);
|
|
|
| // Propagate layout attributes to each RenderSVGInlineText object, and the whole list to the RenderSVGText root.
|
| - Vector<SVGTextLayoutAttributes>& allAttributes = textRoot->layoutAttributes();
|
| - allAttributes.clear();
|
| atCharacter = 0;
|
| lastCharacter = '\0';
|
| propagateLayoutAttributes(textRoot, allAttributes, atCharacter, lastCharacter);
|
|
|