OSDN Git Service

Fix for Devanagari diacritical marks
authorRussell Brenner <russellbrenner@google.com>
Mon, 25 Jul 2011 23:25:38 +0000 (16:25 -0700)
committerRussell Brenner <russellbrenner@google.com>
Wed, 27 Jul 2011 20:29:28 +0000 (13:29 -0700)
It appears that offsetX and advance were at odds with each other.
Eliminating offsetX causes the diacritical marks to be positioned
correctly.

Bug: 4309954
Change-Id: I51fbdd4523ba7de1a2d981b971fdd4f1d42b979c

Source/WebCore/platform/graphics/android/FontAndroid.cpp

index af2edc7..b56e37c 100644 (file)
@@ -717,8 +717,7 @@ void TextRunWalker::setGlyphXPositions(bool isRTL)
         int i = isRTL ? m_item.num_glyphs - iter - 1 : iter;
 
         m_glyphs16[i] = m_item.glyphs[i];
-        int offsetX = truncateFixedPointToInteger(m_item.offsets[i].x);
-        m_xPositions[i] = SkIntToScalar(m_offsetX + position + offsetX);
+        m_xPositions[i] = SkIntToScalar(m_offsetX + position);
 
         int advance = truncateFixedPointToInteger(m_item.advances[i]);
         // The first half of the conjunction works around the case where