diff options
Diffstat (limited to 'core/fxge/apple')
-rw-r--r-- | core/fxge/apple/fx_apple_platform.cpp | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/core/fxge/apple/fx_apple_platform.cpp b/core/fxge/apple/fx_apple_platform.cpp index 20e86ed483..33e675c0a8 100644 --- a/core/fxge/apple/fx_apple_platform.cpp +++ b/core/fxge/apple/fx_apple_platform.cpp @@ -4,6 +4,9 @@ // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com +#include <algorithm> +#include <vector> + #include "core/fxcrt/fx_system.h" #ifndef _SKIA_SUPPORT_ @@ -55,8 +58,8 @@ bool CGDrawGlyphRun(CGContextRef pContext, if (!pFont->GetPlatformFont()) return false; } - CFX_FixedBufGrow<uint16_t, 32> glyph_indices(nChars); - CFX_FixedBufGrow<CGPoint, 32> glyph_positions(nChars); + std::vector<uint16_t> glyph_indices(std::max(32, nChars)); + std::vector<CGPoint> glyph_positions(std::max(32, nChars)); for (int i = 0; i < nChars; i++) { glyph_indices[i] = pCharPos[i].m_ExtGID ? pCharPos[i].m_ExtGID : pCharPos[i].m_GlyphIndex; @@ -74,9 +77,9 @@ bool CGDrawGlyphRun(CGContextRef pContext, new_matrix.d = -new_matrix.d; } quartz2d.setGraphicsTextMatrix(pContext, &new_matrix); - return quartz2d.drawGraphicsString(pContext, pFont->GetPlatformFont(), - font_size, glyph_indices, glyph_positions, - nChars, argb, nullptr); + return quartz2d.drawGraphicsString( + pContext, pFont->GetPlatformFont(), font_size, glyph_indices.data(), + glyph_positions.data(), nChars, argb, nullptr); } } // namespace |