aboutsummaryrefslogtreecommitdiff
path: root/www/waterfox/files/patch-bug1448774
blob: 8627702a8f10d7f943ea4c9f2bdb9c87dc0701b5 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
commit 8ae6890efea4
Author: Robert Longson <longsonr@gmail.com>
Date:   Thu Mar 29 03:12:05 2018 +0100

    Bug 1448774. r=dholbert, a=RyanVM
    
    --HG--
    extra : source : edfd9ffbd7208ef0a59f40a0d77d8dd53c905cb9
---
 dom/svg/SVGTextContentElement.h | 1 +
 layout/svg/SVGTextFrame.cpp     | 4 ++--
 2 files changed, 3 insertions(+), 2 deletions(-)

diff --git dom/svg/SVGTextContentElement.h dom/svg/SVGTextContentElement.h
index 712d9492b5a0..9eb464ab159a 100644
--- dom/svg/SVGTextContentElement.h
+++ dom/svg/SVGTextContentElement.h
@@ -25,6 +25,7 @@ typedef SVGGraphicsElement SVGTextContentElementBase;
 
 class SVGTextContentElement : public SVGTextContentElementBase
 {
+  friend class ::SVGTextFrame;
 public:
   using FragmentOrElement::TextLength;
 
diff --git layout/svg/SVGTextFrame.cpp layout/svg/SVGTextFrame.cpp
index 9c44ce595654..2be5970075dd 100644
--- layout/svg/SVGTextFrame.cpp
+++ layout/svg/SVGTextFrame.cpp
@@ -5290,8 +5290,8 @@ SVGTextFrame::DoGlyphPositioning()
     float actualTextLength =
       static_cast<float>(presContext->AppUnitsToGfxUnits(frameLength) * factor);
 
-    RefPtr<SVGAnimatedEnumeration> lengthAdjustEnum = element->LengthAdjust();
-    uint16_t lengthAdjust = lengthAdjustEnum->AnimVal();
+    uint16_t lengthAdjust =
+      element->EnumAttributes()[SVGTextContentElement::LENGTHADJUST].GetAnimValue();
     switch (lengthAdjust) {
       case LENGTHADJUST_SPACINGANDGLYPHS:
         // Scale the glyphs and their positions.