summaryrefslogtreecommitdiff
path: root/vcl/source/gdi/gfxlink.cxx
diff options
context:
space:
mode:
authorTakeshi Abe <tabe@fixedpoint.jp>2014-03-09 00:44:27 +0900
committerTakeshi Abe <tabe@fixedpoint.jp>2014-03-09 05:17:41 +0900
commit06024a58e01a41fe5ce5af38b7714ea6c66a6832 (patch)
treea1c3415fc7ca5581c610838e7865c5f9c9184cda /vcl/source/gdi/gfxlink.cxx
parent54195c53a915b28302bf36333d2b328e57881b30 (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.cxx9
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;