diff options
author | tsepez <tsepez@chromium.org> | 2016-09-23 07:26:29 -0700 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2016-09-23 07:26:29 -0700 |
commit | 3f4111fbff1233de9f5c67eda433bee0f5f88c4e (patch) | |
tree | 5cb30b258413915f8b800c871d235c123df1ad95 /core/fpdfapi/fpdf_font/fpdf_font.cpp | |
parent | 917d24852841f4919f418076c0277d2742f961ca (diff) | |
download | pdfium-3f4111fbff1233de9f5c67eda433bee0f5f88c4e.tar.xz |
Make CPDF_Font::Create() return a std::unique_ptr.
Review-Url: https://codereview.chromium.org/2364643003
Diffstat (limited to 'core/fpdfapi/fpdf_font/fpdf_font.cpp')
-rw-r--r-- | core/fpdfapi/fpdf_font/fpdf_font.cpp | 18 |
1 files changed, 10 insertions, 8 deletions
diff --git a/core/fpdfapi/fpdf_font/fpdf_font.cpp b/core/fpdfapi/fpdf_font/fpdf_font.cpp index 1cb67be51f..a463c15da5 100644 --- a/core/fpdfapi/fpdf_font/fpdf_font.cpp +++ b/core/fpdfapi/fpdf_font/fpdf_font.cpp @@ -60,10 +60,12 @@ CPDF_Font* CFX_StockFontArray::GetFont(uint32_t index) const { return m_StockFonts[index].get(); } -void CFX_StockFontArray::SetFont(uint32_t index, CPDF_Font* font) { - if (index >= FX_ArraySize(m_StockFonts)) - return; - m_StockFonts[index].reset(font); +CPDF_Font* CFX_StockFontArray::SetFont(uint32_t index, + std::unique_ptr<CPDF_Font> pFont) { + CPDF_Font* result = pFont.get(); + if (index < FX_ArraySize(m_StockFonts)) + m_StockFonts[index] = std::move(pFont); + return result; } CPDF_FontGlobals::CPDF_FontGlobals() { @@ -80,12 +82,12 @@ CPDF_Font* CPDF_FontGlobals::Find(CPDF_Document* pDoc, uint32_t index) { return it->second ? it->second->GetFont(index) : nullptr; } -void CPDF_FontGlobals::Set(CPDF_Document* pDoc, - uint32_t index, - CPDF_Font* pFont) { +CPDF_Font* CPDF_FontGlobals::Set(CPDF_Document* pDoc, + uint32_t index, + std::unique_ptr<CPDF_Font> pFont) { if (!pdfium::ContainsKey(m_StockMap, pDoc)) m_StockMap[pDoc].reset(new CFX_StockFontArray); - m_StockMap[pDoc]->SetFont(index, pFont); + return m_StockMap[pDoc]->SetFont(index, std::move(pFont)); } void CPDF_FontGlobals::Clear(CPDF_Document* pDoc) { |