Index: core/src/fxge/ge/fx_ge_fontmap.cpp |
diff --git a/core/src/fxge/ge/fx_ge_fontmap.cpp b/core/src/fxge/ge/fx_ge_fontmap.cpp |
index 9bbebd9917c26d5960422efe2527962a37ccfdf2..495d95c8d74e6a8a706580fbce822f4a086d90f7 100644 |
--- a/core/src/fxge/ge/fx_ge_fontmap.cpp |
+++ b/core/src/fxge/ge/fx_ge_fontmap.cpp |
@@ -61,12 +61,9 @@ FX_BOOL CTTFontDesc::ReleaseFace(FXFT_Face face) |
delete this; |
return TRUE; |
} |
-CFX_FontMgr::CFX_FontMgr() |
+CFX_FontMgr::CFX_FontMgr() : m_FTLibrary(nullptr) |
{ |
- m_pBuiltinMapper = new CFX_FontMapper; |
- m_pBuiltinMapper->m_pFontMgr = this; |
- m_pExtMapper = NULL; |
- m_FTLibrary = NULL; |
+ m_pBuiltinMapper = new CFX_FontMapper(this); |
FXSYS_memset(m_ExternalFonts, 0, sizeof m_ExternalFonts); |
} |
CFX_FontMgr::~CFX_FontMgr() |
@@ -101,18 +98,10 @@ void CFX_FontMgr::SetSystemFontInfo(IFX_SystemFontInfo* pFontInfo) |
FXFT_Face CFX_FontMgr::FindSubstFont(const CFX_ByteString& face_name, FX_BOOL bTrueType, |
FX_DWORD flags, int weight, int italic_angle, int CharsetCP, CFX_SubstFont* pSubstFont) |
{ |
- if (m_FTLibrary == NULL) { |
+ if (!m_FTLibrary) { |
FXFT_Init_FreeType(&m_FTLibrary); |
} |
- if (m_pExtMapper) { |
- FXFT_Face face = m_pExtMapper->FindSubstFont(face_name, bTrueType, flags, weight, italic_angle, |
- CharsetCP, pSubstFont); |
- if (face) { |
- return face; |
- } |
- } |
- return m_pBuiltinMapper->FindSubstFont(face_name, bTrueType, flags, weight, italic_angle, |
- CharsetCP, pSubstFont); |
+ return m_pBuiltinMapper->FindSubstFont(face_name, bTrueType, flags, weight, italic_angle, CharsetCP, pSubstFont); |
} |
FXFT_Face CFX_FontMgr::GetCachedFace(const CFX_ByteString& face_name, |
int weight, FX_BOOL bItalic, uint8_t*& pFontData) |
@@ -454,13 +443,14 @@ FX_BOOL CFX_FontMgr::GetStandardFont(const uint8_t*& pFontData, FX_DWORD& size, |
} |
return TRUE; |
} |
-CFX_FontMapper::CFX_FontMapper() |
+CFX_FontMapper::CFX_FontMapper(CFX_FontMgr* mgr) |
+ : m_pFontInfo(nullptr), |
+ m_bListLoaded(FALSE), |
+ m_pFontEnumerator(nullptr), |
+ m_pFontMgr(mgr) |
{ |
FXSYS_memset(m_FoxitFaces, 0, sizeof m_FoxitFaces); |
m_MMFaces[0] = m_MMFaces[1] = NULL; |
- m_pFontInfo = NULL; |
- m_bListLoaded = FALSE; |
- m_pFontEnumerator = NULL; |
} |
CFX_FontMapper::~CFX_FontMapper() |
{ |