summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--core/fxge/skia/fx_skia_device.cpp8
1 files changed, 8 insertions, 0 deletions
diff --git a/core/fxge/skia/fx_skia_device.cpp b/core/fxge/skia/fx_skia_device.cpp
index 278b6d874f..3363973aae 100644
--- a/core/fxge/skia/fx_skia_device.cpp
+++ b/core/fxge/skia/fx_skia_device.cpp
@@ -872,6 +872,10 @@ class SkiaState {
m_positions[index + count] = {cp.m_Origin.x * flip,
cp.m_Origin.y * vFlip};
m_glyphs[index + count] = static_cast<uint16_t>(cp.m_GlyphIndex);
+#if _FXM_PLATFORM_ == _FXM_PLATFORM_APPLE_
+ if (cp.m_ExtGID)
+ m_glyphs[index + count] = static_cast<uint16_t>(cp.m_ExtGID);
+#endif
}
SkPoint delta;
if (MatrixOffset(pMatrix, &delta)) {
@@ -1590,6 +1594,10 @@ bool CFX_SkiaDeviceDriver::DrawDeviceText(int nChars,
}
}
glyphs[index] = static_cast<uint16_t>(cp.m_GlyphIndex);
+#if _FXM_PLATFORM_ == _FXM_PLATFORM_APPLE_
+ if (cp.m_ExtGID)
+ glyphs[index] = static_cast<uint16_t>(cp.m_ExtGID);
+#endif
}
if (oneAtATime)
useRSXform = false;