diff options
-rw-r--r-- | core/fxcrt/xml/cfx_saxreader.cpp | 2 | ||||
-rw-r--r-- | core/fxge/cfx_unicodeencodingex.h | 4 | ||||
-rw-r--r-- | core/fxge/ge/cfx_facecache.cpp | 5 | ||||
-rw-r--r-- | core/fxge/ge/cfx_fontcache.cpp | 6 | ||||
-rw-r--r-- | core/fxge/ge/cfx_unicodeencodingex.cpp | 17 | ||||
-rw-r--r-- | core/fxge/ge/fx_ge_linux.cpp | 6 | ||||
-rw-r--r-- | fxbarcode/oned/BC_OneDimWriter.cpp | 4 | ||||
-rw-r--r-- | xfa/fgas/font/cfgas_gefont.cpp | 11 | ||||
-rw-r--r-- | xfa/fwl/cfwl_caret.cpp | 2 | ||||
-rw-r--r-- | xfa/fxfa/parser/cxfa_resolveprocessor.cpp | 2 |
10 files changed, 34 insertions, 25 deletions
diff --git a/core/fxcrt/xml/cfx_saxreader.cpp b/core/fxcrt/xml/cfx_saxreader.cpp index 13efdccdda..c345c0c038 100644 --- a/core/fxcrt/xml/cfx_saxreader.cpp +++ b/core/fxcrt/xml/cfx_saxreader.cpp @@ -199,7 +199,7 @@ int32_t CFX_SAXReader::StartParse( m_bCharData = false; m_dwDataOffset = 0; m_dwParseMode = dwParseMode; - m_Stack.emplace(new CFX_SAXItem(++m_dwItemID)); + m_Stack.push(pdfium::MakeUnique<CFX_SAXItem>(++m_dwItemID)); return 0; } diff --git a/core/fxge/cfx_unicodeencodingex.h b/core/fxge/cfx_unicodeencodingex.h index 21deb44d79..e62410a122 100644 --- a/core/fxge/cfx_unicodeencodingex.h +++ b/core/fxge/cfx_unicodeencodingex.h @@ -30,8 +30,8 @@ class CFX_UnicodeEncodingEx : public CFX_UnicodeEncoding { uint32_t m_nEncodingID; }; -CFX_UnicodeEncodingEx* FX_CreateFontEncodingEx( +std::unique_ptr<CFX_UnicodeEncodingEx> FX_CreateFontEncodingEx( CFX_Font* pFont, - uint32_t nEncodingID = FXFM_ENCODING_NONE); + uint32_t nEncodingID); #endif // CORE_FXGE_CFX_UNICODEENCODINGEX_H_ diff --git a/core/fxge/ge/cfx_facecache.cpp b/core/fxge/ge/cfx_facecache.cpp index 0969cdf10c..5ad7bdd99a 100644 --- a/core/fxge/ge/cfx_facecache.cpp +++ b/core/fxge/ge/cfx_facecache.cpp @@ -396,8 +396,9 @@ CFX_GlyphBitmap* CFX_FaceCache::LookUpGlyphBitmap( CFX_SizeGlyphCache* pSizeCache; auto it = m_SizeMap.find(FaceGlyphsKey); if (it == m_SizeMap.end()) { - pSizeCache = new CFX_SizeGlyphCache; - m_SizeMap[FaceGlyphsKey] = std::unique_ptr<CFX_SizeGlyphCache>(pSizeCache); + auto pNewCache = pdfium::MakeUnique<CFX_SizeGlyphCache>(); + pSizeCache = pNewCache.get(); + m_SizeMap[FaceGlyphsKey] = std::move(pNewCache); } else { pSizeCache = it->second.get(); } diff --git a/core/fxge/ge/cfx_fontcache.cpp b/core/fxge/ge/cfx_fontcache.cpp index 1599c30b93..5ccac8cfbc 100644 --- a/core/fxge/ge/cfx_fontcache.cpp +++ b/core/fxge/ge/cfx_fontcache.cpp @@ -38,8 +38,10 @@ CFX_FaceCache* CFX_FontCache::GetCachedFace(const CFX_Font* pFont) { auto counted_face_cache = pdfium::MakeUnique<CountedFaceCache>(); counted_face_cache->m_nCount = 2; - CFX_FaceCache* face_cache = new CFX_FaceCache(bExternal ? nullptr : face); - counted_face_cache->m_Obj.reset(face_cache); + auto new_cache = + pdfium::MakeUnique<CFX_FaceCache>(bExternal ? nullptr : face); + CFX_FaceCache* face_cache = new_cache.get(); + counted_face_cache->m_Obj = std::move(new_cache); map[face] = std::move(counted_face_cache); return face_cache; } diff --git a/core/fxge/ge/cfx_unicodeencodingex.cpp b/core/fxge/ge/cfx_unicodeencodingex.cpp index cd7625fb17..3f28d4295e 100644 --- a/core/fxge/ge/cfx_unicodeencodingex.cpp +++ b/core/fxge/ge/cfx_unicodeencodingex.cpp @@ -6,9 +6,12 @@ #include "core/fxge/cfx_unicodeencodingex.h" +#include <memory> + #include "core/fpdfapi/font/cpdf_font.h" #include "core/fxge/fx_font.h" #include "core/fxge/fx_freetype.h" +#include "third_party/base/ptr_util.h" namespace { @@ -22,11 +25,12 @@ const uint32_t g_EncodingID[] = { FXFM_ENCODING_APPLE_ROMAN, }; -CFX_UnicodeEncodingEx* FXFM_CreateFontEncoding(CFX_Font* pFont, - uint32_t nEncodingID) { +std::unique_ptr<CFX_UnicodeEncodingEx> FXFM_CreateFontEncoding( + CFX_Font* pFont, + uint32_t nEncodingID) { if (FXFT_Select_Charmap(pFont->GetFace(), nEncodingID)) return nullptr; - return new CFX_UnicodeEncodingEx(pFont, nEncodingID); + return pdfium::MakeUnique<CFX_UnicodeEncodingEx>(pFont, nEncodingID); } } // namespace @@ -80,8 +84,9 @@ uint32_t CFX_UnicodeEncodingEx::CharCodeFromUnicode(wchar_t Unicode) const { return CPDF_Font::kInvalidCharCode; } -CFX_UnicodeEncodingEx* FX_CreateFontEncodingEx(CFX_Font* pFont, - uint32_t nEncodingID) { +std::unique_ptr<CFX_UnicodeEncodingEx> FX_CreateFontEncodingEx( + CFX_Font* pFont, + uint32_t nEncodingID) { if (!pFont || !pFont->GetFace()) return nullptr; @@ -89,7 +94,7 @@ CFX_UnicodeEncodingEx* FX_CreateFontEncodingEx(CFX_Font* pFont, return FXFM_CreateFontEncoding(pFont, nEncodingID); for (size_t i = 0; i < FX_ArraySize(g_EncodingID); ++i) { - CFX_UnicodeEncodingEx* pFontEncoding = + std::unique_ptr<CFX_UnicodeEncodingEx> pFontEncoding = FXFM_CreateFontEncoding(pFont, g_EncodingID[i]); if (pFontEncoding) return pFontEncoding; diff --git a/core/fxge/ge/fx_ge_linux.cpp b/core/fxge/ge/fx_ge_linux.cpp index b216e12127..4e4b2050e9 100644 --- a/core/fxge/ge/fx_ge_linux.cpp +++ b/core/fxge/ge/fx_ge_linux.cpp @@ -5,11 +5,13 @@ // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com #include <memory> +#include <utility> #include "core/fxcrt/fx_codepage.h" #include "core/fxge/cfx_gemodule.h" #include "core/fxge/ge/cfx_folderfontinfo.h" #include "core/fxge/ifx_systemfontinfo.h" +#include "third_party/base/ptr_util.h" #if _FXM_PLATFORM_ == _FXM_PLATFORM_LINUX_ namespace { @@ -145,14 +147,14 @@ bool CFX_LinuxFontInfo::ParseFontCfg(const char** pUserPaths) { std::unique_ptr<IFX_SystemFontInfo> IFX_SystemFontInfo::CreateDefault( const char** pUserPaths) { - CFX_LinuxFontInfo* pInfo = new CFX_LinuxFontInfo; + auto pInfo = pdfium::MakeUnique<CFX_LinuxFontInfo>(); if (!pInfo->ParseFontCfg(pUserPaths)) { pInfo->AddPath("/usr/share/fonts"); pInfo->AddPath("/usr/share/X11/fonts/Type1"); pInfo->AddPath("/usr/share/X11/fonts/TTF"); pInfo->AddPath("/usr/local/share/fonts"); } - return std::unique_ptr<IFX_SystemFontInfo>(pInfo); + return std::move(pInfo); } void CFX_GEModule::InitPlatform() { diff --git a/fxbarcode/oned/BC_OneDimWriter.cpp b/fxbarcode/oned/BC_OneDimWriter.cpp index b898340519..14c5911f95 100644 --- a/fxbarcode/oned/BC_OneDimWriter.cpp +++ b/fxbarcode/oned/BC_OneDimWriter.cpp @@ -135,8 +135,8 @@ void CBC_OneDimWriter::CalcTextInfo(const CFX_ByteString& text, float geWidth, int32_t fontSize, float& charsLen) { - std::unique_ptr<CFX_UnicodeEncodingEx> encoding( - FX_CreateFontEncodingEx(cFont)); + std::unique_ptr<CFX_UnicodeEncodingEx> encoding = + FX_CreateFontEncodingEx(cFont, FXFM_ENCODING_NONE); int32_t length = text.GetLength(); uint32_t* pCharCode = FX_Alloc(uint32_t, text.GetLength()); diff --git a/xfa/fgas/font/cfgas_gefont.cpp b/xfa/fgas/font/cfgas_gefont.cpp index ab773698e7..b1bd769336 100644 --- a/xfa/fgas/font/cfgas_gefont.cpp +++ b/xfa/fgas/font/cfgas_gefont.cpp @@ -160,12 +160,11 @@ bool CFGAS_GEFont::InitFont() { if (!m_pFont) return false; - if (!m_pFontEncoding) { - m_pFontEncoding.reset(FX_CreateFontEncodingEx(m_pFont)); - if (!m_pFontEncoding) - return false; - } - return true; + if (m_pFontEncoding) + return true; + + m_pFontEncoding = FX_CreateFontEncodingEx(m_pFont, FXFM_ENCODING_NONE); + return !!m_pFontEncoding; } CFX_RetainPtr<CFGAS_GEFont> CFGAS_GEFont::Derive(uint32_t dwFontStyles, diff --git a/xfa/fwl/cfwl_caret.cpp b/xfa/fwl/cfwl_caret.cpp index da57cb408c..a6ea9ddb56 100644 --- a/xfa/fwl/cfwl_caret.cpp +++ b/xfa/fwl/cfwl_caret.cpp @@ -25,7 +25,7 @@ CFWL_Caret::CFWL_Caret(const CFWL_App* app, std::unique_ptr<CFWL_WidgetProperties> properties, CFWL_Widget* pOuter) : CFWL_Widget(app, std::move(properties), pOuter), - m_pTimer(new CFWL_Caret::Timer(this)), + m_pTimer(pdfium::MakeUnique<CFWL_Caret::Timer>(this)), m_pTimerInfo(nullptr) { SetStates(FWL_STATE_CAT_HightLight); } diff --git a/xfa/fxfa/parser/cxfa_resolveprocessor.cpp b/xfa/fxfa/parser/cxfa_resolveprocessor.cpp index 14adc7793e..d17a1bab50 100644 --- a/xfa/fxfa/parser/cxfa_resolveprocessor.cpp +++ b/xfa/fxfa/parser/cxfa_resolveprocessor.cpp @@ -23,7 +23,7 @@ #include "xfa/fxfa/parser/xfa_utils.h" CXFA_ResolveProcessor::CXFA_ResolveProcessor() - : m_iCurStart(0), m_pNodeHelper(new CXFA_NodeHelper) {} + : m_iCurStart(0), m_pNodeHelper(pdfium::MakeUnique<CXFA_NodeHelper>()) {} CXFA_ResolveProcessor::~CXFA_ResolveProcessor() {} |