summaryrefslogtreecommitdiff
path: root/xfa/fgas/font/cfgas_fontmgr.cpp
diff options
context:
space:
mode:
authorDan Sinclair <dsinclair@chromium.org>2017-09-26 12:02:16 -0400
committerChromium commit bot <commit-bot@chromium.org>2017-09-26 17:30:44 +0000
commit81f02f4c8347890ce66d6ec48781589d10098689 (patch)
tree6e085c69e5a5addf964014fb63b42d1d8c7a36fa /xfa/fgas/font/cfgas_fontmgr.cpp
parent15dffdf6bd8d595193cfb072974a8efeb8052a91 (diff)
downloadpdfium-81f02f4c8347890ce66d6ec48781589d10098689.tar.xz
Move font source into CFGAS_FontMgr
This CL moves the font source into the font manager so it doesn't need to be stored by each caller (and removes the platform dependant code). The |EnumFonts| method is exposed on the CFGAS_FontMgr so the caller can clear the manager if the enumeration fails. Change-Id: Iecce3d2e09ff01152b7bb79a34fe2b728320da9c Reviewed-on: https://pdfium-review.googlesource.com/14816 Reviewed-by: Henrique Nakashima <hnakashima@chromium.org> Commit-Queue: dsinclair <dsinclair@chromium.org>
Diffstat (limited to 'xfa/fgas/font/cfgas_fontmgr.cpp')
-rw-r--r--xfa/fgas/font/cfgas_fontmgr.cpp24
1 files changed, 4 insertions, 20 deletions
diff --git a/xfa/fgas/font/cfgas_fontmgr.cpp b/xfa/fgas/font/cfgas_fontmgr.cpp
index 2175a23288..df7c36fd53 100644
--- a/xfa/fgas/font/cfgas_fontmgr.cpp
+++ b/xfa/fgas/font/cfgas_fontmgr.cpp
@@ -184,13 +184,8 @@ uint32_t GetFontFamilyHash(const wchar_t* pszFontFamily,
} // namespace
-std::unique_ptr<CFGAS_FontMgr> CFGAS_FontMgr::Create(
- FX_LPEnumAllFonts pEnumerator) {
- return pdfium::MakeUnique<CFGAS_FontMgr>(pEnumerator);
-}
-
-CFGAS_FontMgr::CFGAS_FontMgr(FX_LPEnumAllFonts pEnumerator)
- : m_pEnumerator(pEnumerator), m_FontFaces(100) {
+CFGAS_FontMgr::CFGAS_FontMgr()
+ : m_pEnumerator(FX_GetDefFontEnumerator()), m_FontFaces(100) {
if (m_pEnumerator)
m_pEnumerator(&m_FontFaces, nullptr, 0xFEFF);
}
@@ -688,19 +683,8 @@ RetainPtr<CFX_CRTFileAccess> CFX_FontSourceEnum_File::GetNext() {
return pAccess;
}
-std::unique_ptr<CFGAS_FontMgr> CFGAS_FontMgr::Create(
- CFX_FontSourceEnum_File* pFontEnum) {
- if (!pFontEnum)
- return nullptr;
-
- auto pFontMgr = pdfium::MakeUnique<CFGAS_FontMgr>(pFontEnum);
- if (!pFontMgr->EnumFonts())
- return nullptr;
- return pFontMgr;
-}
-
-CFGAS_FontMgr::CFGAS_FontMgr(CFX_FontSourceEnum_File* pFontEnum)
- : m_pFontSource(pFontEnum) {}
+CFGAS_FontMgr::CFGAS_FontMgr()
+ : m_pFontSource(pdfium::MakeUnique<CFX_FontSourceEnum_File>()) {}
CFGAS_FontMgr::~CFGAS_FontMgr() {}