From 05e01698444726fae302cd335fa4880932d7c543 Mon Sep 17 00:00:00 2001 From: tsepez Date: Mon, 28 Nov 2016 17:30:09 -0800 Subject: Make FDF document creation return unique_ptrs Review-Url: https://codereview.chromium.org/2538533003 --- core/fpdfapi/parser/cfdf_document.cpp | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) (limited to 'core/fpdfapi/parser/cfdf_document.cpp') diff --git a/core/fpdfapi/parser/cfdf_document.cpp b/core/fpdfapi/parser/cfdf_document.cpp index 546308c3a3..41e285245d 100644 --- a/core/fpdfapi/parser/cfdf_document.cpp +++ b/core/fpdfapi/parser/cfdf_document.cpp @@ -25,24 +25,26 @@ CFDF_Document::~CFDF_Document() { m_pFile->Release(); } -CFDF_Document* CFDF_Document::CreateNewDoc() { - CFDF_Document* pDoc = new CFDF_Document; +std::unique_ptr CFDF_Document::CreateNewDoc() { + auto pDoc = pdfium::MakeUnique(); pDoc->m_pRootDict = pDoc->NewIndirect(); pDoc->m_pRootDict->SetNewFor("FDF"); return pDoc; } -CFDF_Document* CFDF_Document::ParseFile(IFX_SeekableReadStream* pFile, - bool bOwnFile) { +std::unique_ptr CFDF_Document::ParseFile( + IFX_SeekableReadStream* pFile, + bool bOwnFile) { if (!pFile) return nullptr; - std::unique_ptr pDoc(new CFDF_Document); + auto pDoc = pdfium::MakeUnique(); pDoc->ParseStream(pFile, bOwnFile); - return pDoc->m_pRootDict ? pDoc.release() : nullptr; + return pDoc->m_pRootDict ? std::move(pDoc) : nullptr; } -CFDF_Document* CFDF_Document::ParseMemory(const uint8_t* pData, uint32_t size) { +std::unique_ptr CFDF_Document::ParseMemory(const uint8_t* pData, + uint32_t size) { return CFDF_Document::ParseFile(FX_CreateMemoryStream((uint8_t*)pData, size), true); } -- cgit v1.2.3