From 411f1185f44b7862a9b1c16e588407ae197752dd Mon Sep 17 00:00:00 2001 From: tsepez Date: Thu, 19 May 2016 17:31:01 -0700 Subject: Remove Release() from IFXCRT_FileAccess. Remove some unused impls. Review-Url: https://codereview.chromium.org/1994323002 --- core/fxcrt/fx_extension.cpp | 39 ++++++++++++++------------------------- 1 file changed, 14 insertions(+), 25 deletions(-) (limited to 'core/fxcrt/fx_extension.cpp') diff --git a/core/fxcrt/fx_extension.cpp b/core/fxcrt/fx_extension.cpp index 1dddf09fd6..197022362f 100644 --- a/core/fxcrt/fx_extension.cpp +++ b/core/fxcrt/fx_extension.cpp @@ -4,6 +4,8 @@ // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com +#include + #include "core/fxcrt/extension.h" #include "core/fxcrt/include/fx_basic.h" #include "core/fxcrt/include/fx_ext.h" @@ -14,14 +16,10 @@ #include #endif -CFX_CRTFileStream::CFX_CRTFileStream(IFXCRT_FileAccess* pFA) - : m_pFile(pFA), m_dwCount(1) {} +CFX_CRTFileStream::CFX_CRTFileStream(std::unique_ptr pFA) + : m_pFile(std::move(pFA)), m_dwCount(1) {} -CFX_CRTFileStream::~CFX_CRTFileStream() { - if (m_pFile) { - m_pFile->Release(); - } -} +CFX_CRTFileStream::~CFX_CRTFileStream() {} IFX_FileStream* CFX_CRTFileStream::Retain() { m_dwCount++; @@ -83,27 +81,18 @@ IFX_FileAccess* FX_CreateDefaultFileAccess(const CFX_WideStringC& wsPath) { #endif // PDF_ENABLE_XFA IFX_FileStream* FX_CreateFileStream(const FX_CHAR* filename, uint32_t dwModes) { - IFXCRT_FileAccess* pFA = FXCRT_FileAccess_Create(); - if (!pFA) { - return NULL; - } - if (!pFA->Open(filename, dwModes)) { - pFA->Release(); - return NULL; - } - return new CFX_CRTFileStream(pFA); + std::unique_ptr pFA(IFXCRT_FileAccess::Create()); + if (!pFA->Open(filename, dwModes)) + return nullptr; + return new CFX_CRTFileStream(std::move(pFA)); } + IFX_FileStream* FX_CreateFileStream(const FX_WCHAR* filename, uint32_t dwModes) { - IFXCRT_FileAccess* pFA = FXCRT_FileAccess_Create(); - if (!pFA) { - return NULL; - } - if (!pFA->Open(filename, dwModes)) { - pFA->Release(); - return NULL; - } - return new CFX_CRTFileStream(pFA); + std::unique_ptr pFA(IFXCRT_FileAccess::Create()); + if (!pFA->Open(filename, dwModes)) + return nullptr; + return new CFX_CRTFileStream(std::move(pFA)); } IFX_FileRead* FX_CreateFileRead(const FX_CHAR* filename) { return FX_CreateFileStream(filename, FX_FILEMODE_ReadOnly); -- cgit v1.2.3