From 335cf093231c984a23cb9ea113148ea1f19621ba Mon Sep 17 00:00:00 2001 From: tsepez Date: Wed, 9 Nov 2016 13:28:26 -0800 Subject: Return unique_ptr from CPDF_Object::Clone(). Because that's what clone does. There are numerous release() calls that will go away as more code is converted. Review-Url: https://codereview.chromium.org/2484033002 --- core/fpdfapi/parser/cpdf_reference.cpp | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) (limited to 'core/fpdfapi/parser/cpdf_reference.cpp') diff --git a/core/fpdfapi/parser/cpdf_reference.cpp b/core/fpdfapi/parser/cpdf_reference.cpp index a9cdf54855..8f44aa0200 100644 --- a/core/fpdfapi/parser/cpdf_reference.cpp +++ b/core/fpdfapi/parser/cpdf_reference.cpp @@ -7,6 +7,7 @@ #include "core/fpdfapi/parser/cpdf_reference.h" #include "core/fpdfapi/parser/cpdf_indirect_object_holder.h" +#include "third_party/base/ptr_util.h" #include "third_party/base/stl_util.h" CPDF_Reference::CPDF_Reference(CPDF_IndirectObjectHolder* pDoc, int objnum) @@ -50,11 +51,11 @@ const CPDF_Reference* CPDF_Reference::AsReference() const { return this; } -CPDF_Object* CPDF_Reference::Clone() const { +std::unique_ptr CPDF_Reference::Clone() const { return CloneObjectNonCyclic(false); } -CPDF_Object* CPDF_Reference::CloneNonCyclic( +std::unique_ptr CPDF_Reference::CloneNonCyclic( bool bDirect, std::set* pVisited) const { pVisited->insert(this); @@ -64,7 +65,7 @@ CPDF_Object* CPDF_Reference::CloneNonCyclic( ? pDirect->CloneNonCyclic(true, pVisited) : nullptr; } - return new CPDF_Reference(m_pObjList, m_RefObjNum); + return pdfium::MakeUnique(m_pObjList, m_RefObjNum); } CPDF_Object* CPDF_Reference::SafeGetDirect() const { -- cgit v1.2.3