summaryrefslogtreecommitdiff
path: root/scripting/source/stringresource
diff options
context:
space:
mode:
authorNoel Grandin <noel.grandin@collabora.co.uk>2018-08-22 09:45:29 +0200
committerNoel Grandin <noel.grandin@collabora.co.uk>2018-08-22 13:25:44 +0200
commit7867e1f1cdd726cb98a236245e3d08557cc3a313 (patch)
treed791bca169b8957248c8482ea70b6db087a6e08d /scripting/source/stringresource
parent5cb74685babe8ce8ea61bec515c0b701e0df34a5 (diff)
loplugin:useuniqueptr in StringResourceImpl
Change-Id: I399836e9177038dde03ec7435e549094e4d3dd04 Reviewed-on: https://gerrit.libreoffice.org/59437 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Diffstat (limited to 'scripting/source/stringresource')
-rw-r--r--scripting/source/stringresource/stringresource.cxx58
-rw-r--r--scripting/source/stringresource/stringresource.hxx4
2 files changed, 28 insertions, 34 deletions
diff --git a/scripting/source/stringresource/stringresource.cxx b/scripting/source/stringresource/stringresource.cxx
index 8fdfdec22526..3317fa330fd1 100644
--- a/scripting/source/stringresource/stringresource.cxx
+++ b/scripting/source/stringresource/stringresource.cxx
@@ -112,11 +112,6 @@ StringResourceImpl::StringResourceImpl( const Reference< XComponentContext >& rx
StringResourceImpl::~StringResourceImpl()
{
- for( auto& pLocaleItem : m_aLocaleItemVector )
- delete pLocaleItem;
-
- for( auto& pLocaleItem : m_aDeletedLocaleItemVector )
- delete pLocaleItem;
}
@@ -445,7 +440,7 @@ void StringResourceImpl::newLocale( const Locale& locale )
//}
LocaleItem* pLocaleItem = new LocaleItem( locale );
- m_aLocaleItemVector.push_back( pLocaleItem );
+ m_aLocaleItemVector.emplace_back( pLocaleItem );
pLocaleItem->m_bModified = true;
// Copy strings from default locale
@@ -506,9 +501,9 @@ void StringResourceImpl::removeLocale( const Locale& locale )
LocaleItem* pFallbackItem = nullptr;
for( auto& pLocaleItem : m_aLocaleItemVector )
{
- if( pLocaleItem != pRemoveItem )
+ if( pLocaleItem.get() != pRemoveItem )
{
- pFallbackItem = pLocaleItem;
+ pFallbackItem = pLocaleItem.get();
break;
}
}
@@ -524,11 +519,10 @@ void StringResourceImpl::removeLocale( const Locale& locale )
}
for( auto it = m_aLocaleItemVector.begin(); it != m_aLocaleItemVector.end(); ++it )
{
- LocaleItem* pLocaleItem = *it;
- if( pLocaleItem == pRemoveItem )
+ if( it->get() == pRemoveItem )
{
// Remember locale item to delete file while storing
- m_aDeletedLocaleItemVector.push_back( pLocaleItem );
+ m_aDeletedLocaleItemVector.push_back( std::move(*it) );
// Last locale?
if( nLocaleCount == 1 )
@@ -607,7 +601,7 @@ LocaleItem* StringResourceImpl::getItemForLocale
cmp_locale.Country == locale.Country &&
cmp_locale.Variant == locale.Variant )
{
- pRetItem = pLocaleItem;
+ pRetItem = pLocaleItem.get();
break;
}
}
@@ -635,7 +629,7 @@ LocaleItem* StringResourceImpl::getClosestMatchItemForLocale( const Locale& loca
}
::std::vector< Locale >::const_iterator iFound( LanguageTag::getMatchingFallback( aLocales, locale));
if (iFound != aLocales.end())
- pRetItem = *(m_aLocaleItemVector.begin() + (iFound - aLocales.begin()));
+ pRetItem = (m_aLocaleItemVector.begin() + (iFound - aLocales.begin()))->get();
return pRetItem;
}
@@ -894,9 +888,9 @@ void StringResourcePersistenceImpl::implStoreAtStorage
{
for( auto& pLocaleItem : m_aDeletedLocaleItemVector )
{
- if( pLocaleItem != nullptr )
+ if( pLocaleItem )
{
- OUString aStreamName = implGetFileNameForLocaleItem( pLocaleItem, m_aNameBase );
+ OUString aStreamName = implGetFileNameForLocaleItem( pLocaleItem.get(), m_aNameBase );
aStreamName += ".properties";
try
@@ -906,7 +900,7 @@ void StringResourcePersistenceImpl::implStoreAtStorage
catch( Exception& )
{}
- delete pLocaleItem;
+ pLocaleItem.reset();
}
}
m_aDeletedLocaleItemVector.clear();
@@ -915,9 +909,9 @@ void StringResourcePersistenceImpl::implStoreAtStorage
for( auto& pLocaleItem : m_aLocaleItemVector )
{
if( pLocaleItem != nullptr && (bStoreAll || pLocaleItem->m_bModified) &&
- loadLocale( pLocaleItem ) )
+ loadLocale( pLocaleItem.get() ) )
{
- OUString aStreamName = implGetFileNameForLocaleItem( pLocaleItem, aNameBase );
+ OUString aStreamName = implGetFileNameForLocaleItem( pLocaleItem.get(), aNameBase );
aStreamName += ".properties";
Reference< io::XStream > xElementStream =
@@ -937,7 +931,7 @@ void StringResourcePersistenceImpl::implStoreAtStorage
Reference< io::XOutputStream > xOutputStream = xElementStream->getOutputStream();
if( xOutputStream.is() )
- implWritePropertiesFile( pLocaleItem, xOutputStream, aComment );
+ implWritePropertiesFile( pLocaleItem.get(), xOutputStream, aComment );
xOutputStream->closeOutput();
if( bUsedForStore )
@@ -1009,14 +1003,14 @@ void StringResourcePersistenceImpl::implKillRemovedLocaleFiles
// Delete files for deleted locales
for( auto& pLocaleItem : m_aDeletedLocaleItemVector )
{
- if( pLocaleItem != nullptr )
+ if( pLocaleItem )
{
OUString aCompleteFileName =
- implGetPathForLocaleItem( pLocaleItem, aNameBase, Location );
+ implGetPathForLocaleItem( pLocaleItem.get(), aNameBase, Location );
if( xFileAccess->exists( aCompleteFileName ) )
xFileAccess->kill( aCompleteFileName );
- delete pLocaleItem;
+ pLocaleItem.reset();
}
}
m_aDeletedLocaleItemVector.clear();
@@ -1063,10 +1057,10 @@ void StringResourcePersistenceImpl::implStoreAtLocation
for( auto& pLocaleItem : m_aLocaleItemVector )
{
if( pLocaleItem != nullptr && (bStoreAll || bKillAll || pLocaleItem->m_bModified) &&
- loadLocale( pLocaleItem ) )
+ loadLocale( pLocaleItem.get() ) )
{
OUString aCompleteFileName =
- implGetPathForLocaleItem( pLocaleItem, aNameBase, Location );
+ implGetPathForLocaleItem( pLocaleItem.get(), aNameBase, Location );
if( xFileAccess->exists( aCompleteFileName ) )
xFileAccess->kill( aCompleteFileName );
@@ -1076,7 +1070,7 @@ void StringResourcePersistenceImpl::implStoreAtLocation
Reference< io::XOutputStream > xOutputStream = xFileAccess->openFileWrite( aCompleteFileName );
if( xOutputStream.is() )
{
- implWritePropertiesFile( pLocaleItem, xOutputStream, aComment );
+ implWritePropertiesFile( pLocaleItem.get(), xOutputStream, aComment );
xOutputStream->closeOutput();
}
if( bUsedForStore )
@@ -1253,13 +1247,13 @@ Sequence< sal_Int8 > StringResourcePersistenceImpl::exportBinary( )
sal_Int32 iDefault = 0;
for( auto& pLocaleItem : m_aLocaleItemVector )
{
- if( pLocaleItem != nullptr && loadLocale( pLocaleItem ) )
+ if( pLocaleItem != nullptr && loadLocale( pLocaleItem.get() ) )
{
- if( m_pDefaultLocaleItem == pLocaleItem )
+ if( m_pDefaultLocaleItem == pLocaleItem.get() )
iDefault = iLocale;
BinaryOutput aLocaleOut( m_xContext );
- implWriteLocaleBinary( pLocaleItem, aLocaleOut );
+ implWriteLocaleBinary( pLocaleItem.get(), aLocaleOut );
pLocaleDataSeq[iLocale] = aLocaleOut.closeAndGetData();
}
@@ -1493,7 +1487,7 @@ void StringResourcePersistenceImpl::importBinary( const Sequence< ::sal_Int8 >&
LocaleItem* pLocaleItem = new LocaleItem( aLocale );
if( iDefault == i )
pUseAsDefaultItem = pLocaleItem;
- m_aLocaleItemVector.push_back( pLocaleItem );
+ m_aLocaleItemVector.emplace_back( pLocaleItem );
implReadPropertiesFile( pLocaleItem, xInput );
}
}
@@ -1549,8 +1543,8 @@ bool checkNamingSceme( const OUString& aName, const OUString& aNameBase,
void StringResourcePersistenceImpl::implLoadAllLocales()
{
for( auto& pLocaleItem : m_aLocaleItemVector )
- if( pLocaleItem != nullptr )
- loadLocale( pLocaleItem );
+ if( pLocaleItem )
+ loadLocale( pLocaleItem.get() );
}
// Scan locale properties files helper
@@ -1583,7 +1577,7 @@ void StringResourcePersistenceImpl::implScanLocaleNames( const Sequence< OUStrin
if( checkNamingSceme( aPureName, m_aNameBase, aLocale ) )
{
LocaleItem* pLocaleItem = new LocaleItem( aLocale, false );
- m_aLocaleItemVector.push_back( pLocaleItem );
+ m_aLocaleItemVector.emplace_back( pLocaleItem );
if( m_pCurrentLocaleItem == nullptr )
m_pCurrentLocaleItem = pLocaleItem;
diff --git a/scripting/source/stringresource/stringresource.hxx b/scripting/source/stringresource/stringresource.hxx
index b871e8677576..e99088b001cf 100644
--- a/scripting/source/stringresource/stringresource.hxx
+++ b/scripting/source/stringresource/stringresource.hxx
@@ -99,8 +99,8 @@ protected:
::comphelper::OInterfaceContainerHelper2 m_aListenerContainer;
- LocaleItemVector m_aLocaleItemVector;
- LocaleItemVector m_aDeletedLocaleItemVector;
+ std::vector< std::unique_ptr<LocaleItem> > m_aLocaleItemVector;
+ std::vector< std::unique_ptr<LocaleItem> > m_aDeletedLocaleItemVector;
LocaleItemVector m_aChangedDefaultLocaleVector;
bool m_bModified;