summaryrefslogtreecommitdiff
path: root/svx/source/tbxctrls/fillctrl.cxx
diff options
context:
space:
mode:
authorTakeshi Abe <tabe@fixedpoint.jp>2014-07-02 22:05:18 +0900
committerTakeshi Abe <tabe@fixedpoint.jp>2014-07-03 00:19:25 +0900
commit8374bbe589511721cbca6adacf15380c5f2dc0f5 (patch)
treeb624c3e7462155fff46c6c8e8ed2c594a8b62e84 /svx/source/tbxctrls/fillctrl.cxx
parent7a85ec95b0efcf7fb9b5db0037bb1de2aadfc4fd (diff)
Avoid possible memory leaks in case of exceptions
Change-Id: I7878d425cea773338799fb784c25039e6b923e47
Diffstat (limited to 'svx/source/tbxctrls/fillctrl.cxx')
-rw-r--r--svx/source/tbxctrls/fillctrl.cxx16
1 files changed, 7 insertions, 9 deletions
diff --git a/svx/source/tbxctrls/fillctrl.cxx b/svx/source/tbxctrls/fillctrl.cxx
index 4a26ac4840c7..097d47506467 100644
--- a/svx/source/tbxctrls/fillctrl.cxx
+++ b/svx/source/tbxctrls/fillctrl.cxx
@@ -36,6 +36,7 @@
#include <svx/itemwin.hxx>
#include <svx/dialmgr.hxx>
#include "helpid.hrc"
+#include <boost/scoped_ptr.hpp>
using namespace ::com::sun::star::uno;
using namespace ::com::sun::star::util;
@@ -317,9 +318,9 @@ void SvxFillToolBoxControl::Update(const SfxPoolItem* pState)
}
aTmpStr = TMP_STR_BEGIN + aString + TMP_STR_END;
- XGradientEntry* pEntry = new XGradientEntry(mpGradientItem->GetGradientValue(), aTmpStr);
+ boost::scoped_ptr<XGradientEntry> pEntry(new XGradientEntry(mpGradientItem->GetGradientValue(), aTmpStr));
XGradientList aGradientList( "", ""/*TODO?*/ );
- aGradientList.Insert( pEntry );
+ aGradientList.Insert( pEntry.get() );
aGradientList.SetDirty( false );
const Bitmap aBmp = aGradientList.GetUiBitmap( 0 );
@@ -330,7 +331,6 @@ void SvxFillToolBoxControl::Update(const SfxPoolItem* pState)
}
aGradientList.Remove( 0 );
- delete pEntry;
}
}
else
@@ -363,9 +363,9 @@ void SvxFillToolBoxControl::Update(const SfxPoolItem* pState)
}
aTmpStr = TMP_STR_BEGIN + aString + TMP_STR_END;
- XHatchEntry* pEntry = new XHatchEntry(mpHatchItem->GetHatchValue(), aTmpStr);
+ boost::scoped_ptr<XHatchEntry> pEntry(new XHatchEntry(mpHatchItem->GetHatchValue(), aTmpStr));
XHatchList aHatchList( "", ""/*TODO?*/ );
- aHatchList.Insert( pEntry );
+ aHatchList.Insert( pEntry.get() );
aHatchList.SetDirty( false );
const Bitmap aBmp = aHatchList.GetUiBitmap( 0 );
@@ -376,7 +376,6 @@ void SvxFillToolBoxControl::Update(const SfxPoolItem* pState)
}
aHatchList.Remove( 0 );
- delete pEntry;
}
}
else
@@ -409,16 +408,15 @@ void SvxFillToolBoxControl::Update(const SfxPoolItem* pState)
}
aTmpStr = TMP_STR_BEGIN + aString + TMP_STR_END;
- XBitmapEntry* pEntry = new XBitmapEntry(mpBitmapItem->GetGraphicObject(), aTmpStr);
+ boost::scoped_ptr<XBitmapEntry> pEntry(new XBitmapEntry(mpBitmapItem->GetGraphicObject(), aTmpStr));
XBitmapListRef xBitmapList =
XPropertyList::CreatePropertyList(XBITMAP_LIST,
OUString("TmpList"), ""/*TODO?*/)->AsBitmapList();
- xBitmapList->Insert( pEntry );
+ xBitmapList->Insert( pEntry.get() );
xBitmapList->SetDirty( false );
mpFillAttrLB->Fill( xBitmapList );
mpFillAttrLB->SelectEntryPos(mpFillAttrLB->GetEntryCount() - 1);
xBitmapList->Remove( 0 );
- delete pEntry;
}
}
else