From 917d24852841f4919f418076c0277d2742f961ca Mon Sep 17 00:00:00 2001 From: tsepez Date: Thu, 22 Sep 2016 18:46:45 -0700 Subject: Make CPDF_ColorSpace::Load() return a unique_ptr Specialize default_delete to avoid having to say ReleaseDeleter throughout the code. Review-Url: https://codereview.chromium.org/2368433003 --- core/fpdfapi/fpdf_page/fpdf_page_doc.cpp | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) (limited to 'core/fpdfapi/fpdf_page/fpdf_page_doc.cpp') diff --git a/core/fpdfapi/fpdf_page/fpdf_page_doc.cpp b/core/fpdfapi/fpdf_page/fpdf_page_doc.cpp index e050060a9e..77c18df5fa 100644 --- a/core/fpdfapi/fpdf_page/fpdf_page_doc.cpp +++ b/core/fpdfapi/fpdf_page/fpdf_page_doc.cpp @@ -76,7 +76,7 @@ void CPDF_DocPageData::Clear(FX_BOOL bForceRelease) { continue; if (bForceRelease || csData->use_count() < 2) { - csData->get()->ReleaseCS(); + csData->get()->Release(); csData->reset(nullptr); } } @@ -294,15 +294,16 @@ CPDF_ColorSpace* CPDF_DocPageData::GetColorSpaceImpl( } } - CPDF_ColorSpace* pCS = CPDF_ColorSpace::Load(m_pPDFDoc, pArray); + std::unique_ptr pCS = + CPDF_ColorSpace::Load(m_pPDFDoc, pArray); if (!pCS) return nullptr; if (!csData) { - csData = new CPDF_CountedColorSpace(pCS); + csData = new CPDF_CountedColorSpace(pCS.release()); m_ColorSpaceMap[pCSObj] = csData; } else { - csData->reset(pCS); + csData->reset(pCS.release()); } return csData->AddRef(); } @@ -335,7 +336,7 @@ void CPDF_DocPageData::ReleaseColorSpace(const CPDF_Object* pColorSpace) { return; // We have item only in m_ColorSpaceMap cache. Clean it. - pCountedColorSpace->get()->ReleaseCS(); + pCountedColorSpace->get()->Release(); pCountedColorSpace->reset(nullptr); } -- cgit v1.2.3