diff options
author | Takeshi Abe <tabe@fixedpoint.jp> | 2014-03-09 00:44:27 +0900 |
---|---|---|
committer | Takeshi Abe <tabe@fixedpoint.jp> | 2014-03-09 05:17:41 +0900 |
commit | 06024a58e01a41fe5ce5af38b7714ea6c66a6832 (patch) | |
tree | a1c3415fc7ca5581c610838e7865c5f9c9184cda /vcl/source/gdi/gfxlink.cxx | |
parent | 54195c53a915b28302bf36333d2b328e57881b30 (diff) |
Avoid possible resource leaks with boost::scoped_ptr
Change-Id: Ic6e8482dfb022f32532b5c1a6e045092c3485106
Diffstat (limited to 'vcl/source/gdi/gfxlink.cxx')
-rw-r--r-- | vcl/source/gdi/gfxlink.cxx | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/vcl/source/gdi/gfxlink.cxx b/vcl/source/gdi/gfxlink.cxx index 1d726bae9dd5..3d6ba2951f19 100644 --- a/vcl/source/gdi/gfxlink.cxx +++ b/vcl/source/gdi/gfxlink.cxx @@ -28,6 +28,7 @@ #include <vcl/gfxlink.hxx> #include <vcl/cvtgrf.hxx> #include <com/sun/star/ucb/CommandAbortedException.hpp> +#include <boost/scoped_ptr.hpp> GfxLink::GfxLink() : meType ( GFX_LINK_TYPE_NONE ), @@ -346,12 +347,12 @@ ImpSwap::ImpSwap( sal_uInt8* pData, sal_uLong nDataSize ) : maURL = aTempFile.GetURL(); if( !maURL.isEmpty() ) { - SvStream* pOStm = ::utl::UcbStreamHelper::CreateStream( maURL, STREAM_READWRITE | STREAM_SHARE_DENYWRITE ); + boost::scoped_ptr<SvStream> pOStm(::utl::UcbStreamHelper::CreateStream( maURL, STREAM_READWRITE | STREAM_SHARE_DENYWRITE )); if( pOStm ) { pOStm->Write( pData, mnDataSize ); bool bError = ( ERRCODE_NONE != pOStm->GetError() ); - delete pOStm; + pOStm.reset(); if( bError ) { @@ -375,7 +376,7 @@ sal_uInt8* ImpSwap::GetData() const if( IsSwapped() ) { - SvStream* pIStm = ::utl::UcbStreamHelper::CreateStream( maURL, STREAM_READWRITE ); + boost::scoped_ptr<SvStream> pIStm(::utl::UcbStreamHelper::CreateStream( maURL, STREAM_READWRITE )); if( pIStm ) { pData = new sal_uInt8[ mnDataSize ]; @@ -386,7 +387,7 @@ sal_uInt8* ImpSwap::GetData() const { bError = true; } - delete pIStm; + pIStm.reset(); if( bError ) delete[] pData, pData = NULL; |