use unique_ptr in StringResourceImpl
Change-Id: Id7a44c4ac5643aae96cb707d2cca217f8535ee63 Reviewed-on: https://gerrit.libreoffice.org/65404 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
This commit is contained in:
@@ -38,6 +38,7 @@
|
||||
#include <com/sun/star/ucb/SimpleFileAccess.hpp>
|
||||
|
||||
#include <osl/diagnose.h>
|
||||
#include <o3tl/make_unique.hxx>
|
||||
#include <rtl/tencinfo.h>
|
||||
#include <rtl/ustrbuf.hxx>
|
||||
#include <rtl/strbuf.hxx>
|
||||
@@ -337,8 +338,8 @@ void StringResourceImpl::setDefaultLocale( const Locale& locale )
|
||||
{
|
||||
if( m_pDefaultLocaleItem )
|
||||
{
|
||||
LocaleItem* pChangedDefaultLocaleItem = new LocaleItem( m_pDefaultLocaleItem->m_locale );
|
||||
m_aChangedDefaultLocaleVector.push_back( pChangedDefaultLocaleItem );
|
||||
m_aChangedDefaultLocaleVector.push_back(
|
||||
o3tl::make_unique<LocaleItem>( m_pDefaultLocaleItem->m_locale ) );
|
||||
}
|
||||
|
||||
m_pDefaultLocaleItem = pLocaleItem;
|
||||
@@ -523,8 +524,8 @@ void StringResourceImpl::removeLocale( const Locale& locale )
|
||||
m_nNextUniqueNumericId = 0;
|
||||
if( m_pDefaultLocaleItem )
|
||||
{
|
||||
LocaleItem* pChangedDefaultLocaleItem = new LocaleItem( m_pDefaultLocaleItem->m_locale );
|
||||
m_aChangedDefaultLocaleVector.push_back( pChangedDefaultLocaleItem );
|
||||
m_aChangedDefaultLocaleVector.push_back(
|
||||
o3tl::make_unique<LocaleItem>( m_pDefaultLocaleItem->m_locale ) );
|
||||
}
|
||||
m_pCurrentLocaleItem = nullptr;
|
||||
m_pDefaultLocaleItem = nullptr;
|
||||
@@ -937,9 +938,7 @@ void StringResourcePersistenceImpl::implStoreAtStorage
|
||||
{
|
||||
for( auto& pLocaleItem : m_aChangedDefaultLocaleVector )
|
||||
{
|
||||
if( pLocaleItem != nullptr )
|
||||
{
|
||||
OUString aStreamName = implGetFileNameForLocaleItem( pLocaleItem, m_aNameBase );
|
||||
OUString aStreamName = implGetFileNameForLocaleItem( pLocaleItem.get(), m_aNameBase );
|
||||
aStreamName += ".default";
|
||||
|
||||
try
|
||||
@@ -949,8 +948,7 @@ void StringResourcePersistenceImpl::implStoreAtStorage
|
||||
catch( Exception& )
|
||||
{}
|
||||
|
||||
delete pLocaleItem;
|
||||
}
|
||||
pLocaleItem.reset();
|
||||
}
|
||||
m_aChangedDefaultLocaleVector.clear();
|
||||
}
|
||||
@@ -1018,16 +1016,12 @@ void StringResourcePersistenceImpl::implKillChangedDefaultFiles
|
||||
{
|
||||
// Delete files for changed defaults
|
||||
for( auto& pLocaleItem : m_aChangedDefaultLocaleVector )
|
||||
{
|
||||
if( pLocaleItem != nullptr )
|
||||
{
|
||||
OUString aCompleteFileName =
|
||||
implGetPathForLocaleItem( pLocaleItem, aNameBase, Location, true );
|
||||
implGetPathForLocaleItem( pLocaleItem.get(), aNameBase, Location, true );
|
||||
if( xFileAccess->exists( aCompleteFileName ) )
|
||||
xFileAccess->kill( aCompleteFileName );
|
||||
|
||||
delete pLocaleItem;
|
||||
}
|
||||
pLocaleItem.reset();
|
||||
}
|
||||
m_aChangedDefaultLocaleVector.clear();
|
||||
}
|
||||
|
@@ -82,7 +82,7 @@ struct LocaleItem
|
||||
{}
|
||||
};
|
||||
|
||||
typedef std::vector< LocaleItem* > LocaleItemVector;
|
||||
typedef std::vector< std::unique_ptr<LocaleItem> > LocaleItemVector;
|
||||
|
||||
typedef ::cppu::WeakImplHelper<
|
||||
css::lang::XServiceInfo,
|
||||
|
Reference in New Issue
Block a user