summaryrefslogtreecommitdiff
path: root/basic/source/comp/codegen.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'basic/source/comp/codegen.cxx')
-rw-r--r--basic/source/comp/codegen.cxx10
1 files changed, 3 insertions, 7 deletions
diff --git a/basic/source/comp/codegen.cxx b/basic/source/comp/codegen.cxx
index aa587ba0e5b5..8b7a0a8142e4 100644
--- a/basic/source/comp/codegen.cxx
+++ b/basic/source/comp/codegen.cxx
@@ -133,7 +133,7 @@ void SbiCodeGen::Save()
if( pParser->IsCodeCompleting() )
return;
- SbiImage* p = new SbiImage;
+ std::unique_ptr<SbiImage> p( new SbiImage );
rMod.StartDefinitions();
// OPTION BASE-Value:
p->nDimBase = pParser->nBase;
@@ -150,7 +150,7 @@ void SbiCodeGen::Save()
nIfaceCount = pParser->aIfaceVector.size();
if( !rMod.pClassData )
- rMod.pClassData = new SbClassData;
+ rMod.pClassData.reset( new SbClassData );
if( nIfaceCount )
{
for( int i = 0 ; i < nIfaceCount ; i++ )
@@ -375,11 +375,7 @@ void SbiCodeGen::Save()
}
if( !p->IsError() )
{
- rMod.pImage = p;
- }
- else
- {
- delete p;
+ rMod.pImage = std::move(p);
}
rMod.EndDefinitions();
}