| Index: Source/core/rendering/svg/SVGTextChunkBuilder.cpp | 
| diff --git a/Source/core/rendering/svg/SVGTextChunkBuilder.cpp b/Source/core/rendering/svg/SVGTextChunkBuilder.cpp | 
| index 488fbd4bddddfaed4f901721af7b7f96e1deaff1..34176c62b1d17736ee7e21aa47d0c132067c2706 100644 | 
| --- a/Source/core/rendering/svg/SVGTextChunkBuilder.cpp | 
| +++ b/Source/core/rendering/svg/SVGTextChunkBuilder.cpp | 
| @@ -152,6 +152,18 @@ void SVGTextChunkBuilder::addTextChunk(Vector<SVGInlineTextBox*>& lineLayoutBoxe | 
| m_textChunks.append(chunk); | 
| } | 
|  | 
| +static void buildSpacingAndGlyphsTransform(bool isVerticalText, float scale, const SVGTextFragment& fragment, AffineTransform& spacingAndGlyphsTransform) | 
| +{ | 
| +    spacingAndGlyphsTransform.translate(fragment.x, fragment.y); | 
| + | 
| +    if (isVerticalText) | 
| +        spacingAndGlyphsTransform.scaleNonUniform(1, scale); | 
| +    else | 
| +        spacingAndGlyphsTransform.scaleNonUniform(scale, 1); | 
| + | 
| +    spacingAndGlyphsTransform.translate(-fragment.x, -fragment.y); | 
| +} | 
| + | 
| void SVGTextChunkBuilder::processTextChunk(const SVGTextChunk& chunk) | 
| { | 
| bool processTextLength = chunk.hasDesiredTextLength(); | 
| @@ -249,16 +261,4 @@ void SVGTextChunkBuilder::processTextAnchorCorrection(bool isVerticalText, float | 
| } | 
| } | 
|  | 
| -void SVGTextChunkBuilder::buildSpacingAndGlyphsTransform(bool isVerticalText, float scale, const SVGTextFragment& fragment, AffineTransform& spacingAndGlyphsTransform) | 
| -{ | 
| -    spacingAndGlyphsTransform.translate(fragment.x, fragment.y); | 
| - | 
| -    if (isVerticalText) | 
| -        spacingAndGlyphsTransform.scaleNonUniform(1, scale); | 
| -    else | 
| -        spacingAndGlyphsTransform.scaleNonUniform(scale, 1); | 
| - | 
| -    spacingAndGlyphsTransform.translate(-fragment.x, -fragment.y); | 
| -} | 
| - | 
| } | 
|  |