diff options
author | Mark Wielaard <mark@klomp.org> | 2013-05-24 21:24:00 +0200 |
---|---|---|
committer | Caolán McNamara <caolanm@redhat.com> | 2013-05-24 19:36:52 +0000 |
commit | 38de05c720693a9025ea77a7ccc5f2b56dda68cb (patch) | |
tree | bdd5321db597101751d67a00c65dbdaf27696227 /svx/source/sidebar/nbdtmg.cxx | |
parent | a602bd1a69db5c6b4e0fa818324cdf4e0088778c (diff) |
Robustify and fix leak in NBOTypeMgrBase::ImplLoad().
The >>operator of SvStream doesn't initialize a variable if the stream
is faulty. So initialize the variables before usage. Also delete the
SvStream even if it was faulty.
Change-Id: I5a7f31016e060c3b9fb4f0fd1889f444877cb89d
Reviewed-on: https://gerrit.libreoffice.org/4031
Tested-by: Caolán McNamara <caolanm@redhat.com>
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Diffstat (limited to 'svx/source/sidebar/nbdtmg.cxx')
-rw-r--r-- | svx/source/sidebar/nbdtmg.cxx | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/svx/source/sidebar/nbdtmg.cxx b/svx/source/sidebar/nbdtmg.cxx index 097615037955..a1eb0c1bcb5c 100644 --- a/svx/source/sidebar/nbdtmg.cxx +++ b/svx/source/sidebar/nbdtmg.cxx @@ -184,8 +184,8 @@ void NBOTypeMgrBase::ImplLoad(String filename) aFile.Append( filename); SvStream* pIStm = ::utl::UcbStreamHelper::CreateStream( aFile.GetMainURL( INetURLObject::NO_DECODE ), STREAM_READ ); if( pIStm ) { - sal_uInt32 nVersion; - sal_Int32 nNumIndex; + sal_uInt32 nVersion = 0; + sal_Int32 nNumIndex = 0; *pIStm >> nVersion; if (nVersion==DEFAULT_NUMBERING_CACHE_FORMAT_VERSION) //first version { @@ -209,8 +209,8 @@ void NBOTypeMgrBase::ImplLoad(String filename) RelplaceNumRule(aNum,nNumIndex,mLevel); *pIStm >> nNumIndex; } - delete pIStm; } + delete pIStm; } eCoreUnit = eOldCoreUnit; bIsLoading = false; |