summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--core/src/fxge/ge/fx_ge_text.cpp9
1 files changed, 5 insertions, 4 deletions
diff --git a/core/src/fxge/ge/fx_ge_text.cpp b/core/src/fxge/ge/fx_ge_text.cpp
index 1b839e0080..6938bb975d 100644
--- a/core/src/fxge/ge/fx_ge_text.cpp
+++ b/core/src/fxge/ge/fx_ge_text.cpp
@@ -1334,8 +1334,9 @@ const CFX_GlyphBitmap* CFX_FaceCache::LoadGlyphBitmap(
bFontStyle, dest_width, anti_alias);
}
CFX_GlyphBitmap* pGlyphBitmap;
- CFX_SizeGlyphCache* pSizeCache = NULL;
- if (m_SizeMap.Lookup(FaceGlyphsKey, (void*&)pSizeCache)) {
+ auto it = m_SizeMap.find(FaceGlyphsKey);
+ if (it != m_SizeMap.end()) {
+ CFX_SizeGlyphCache* pSizeCache = it->second;
if (pSizeCache->m_GlyphMap.Lookup((void*)(uintptr_t)glyph_index,
(void*&)pGlyphBitmap)) {
return pGlyphBitmap;
@@ -1350,8 +1351,8 @@ const CFX_GlyphBitmap* CFX_FaceCache::LoadGlyphBitmap(
pGlyphBitmap = RenderGlyph_Nativetext(pFont, glyph_index, pMatrix,
dest_width, anti_alias);
if (pGlyphBitmap) {
- pSizeCache = new CFX_SizeGlyphCache;
- m_SizeMap.SetAt(FaceGlyphsKey, pSizeCache);
+ CFX_SizeGlyphCache* pSizeCache = new CFX_SizeGlyphCache;
+ m_SizeMap[FaceGlyphsKey] = pSizeCache;
pSizeCache->m_GlyphMap.SetAt((void*)(uintptr_t)glyph_index, pGlyphBitmap);
return pGlyphBitmap;
}