From 23e9b1294471459d386152b1197cfe58514af5da Mon Sep 17 00:00:00 2001 From: Noel Grandin Date: Mon, 22 Jan 2018 14:04:06 +0200 Subject: loplugin:useuniqueptr in i18npool Change-Id: Iff39b9298bfad474c5c011b6355b8ebf5be06318 Reviewed-on: https://gerrit.libreoffice.org/49091 Tested-by: Jenkins Reviewed-by: Noel Grandin --- i18npool/source/breakiterator/breakiteratorImpl.cxx | 20 ++++++++------------ 1 file changed, 8 insertions(+), 12 deletions(-) (limited to 'i18npool/source/breakiterator') diff --git a/i18npool/source/breakiterator/breakiteratorImpl.cxx b/i18npool/source/breakiterator/breakiteratorImpl.cxx index de45516ec31d..e923fbd99eaa 100644 --- a/i18npool/source/breakiterator/breakiteratorImpl.cxx +++ b/i18npool/source/breakiterator/breakiteratorImpl.cxx @@ -41,10 +41,6 @@ BreakIteratorImpl::BreakIteratorImpl() BreakIteratorImpl::~BreakIteratorImpl() { - // Clear lookuptable - for (lookupTableItem* p : lookupTable) - delete p; - lookupTable.clear(); } #define LBI getLocaleSpecificBreakIterator(rLocale) @@ -530,9 +526,9 @@ sal_Int16 BreakIteratorImpl::getScriptClass(sal_uInt32 currentChar) bool BreakIteratorImpl::createLocaleSpecificBreakIterator(const OUString& aLocaleName) { // to share service between same Language but different Country code, like zh_CN and zh_TW - for (lookupTableItem* listItem : lookupTable) { - if (aLocaleName == listItem->aLocale.Language) { - xBI = listItem->xBI; + for (lookupTableItem& listItem : lookupTable) { + if (aLocaleName == listItem.aLocale.Language) { + xBI = listItem.xBI; return true; } } @@ -560,7 +556,7 @@ bool BreakIteratorImpl::createLocaleSpecificBreakIterator(const OUString& aLocal if ( xI.is() ) { xBI.set(xI, UNO_QUERY); if (xBI.is()) { - lookupTable.push_back(new lookupTableItem(Locale(aLocaleName, aLocaleName, aLocaleName), xBI)); + lookupTable.emplace_back(Locale(aLocaleName, aLocaleName, aLocaleName), xBI); return true; } } @@ -575,9 +571,9 @@ BreakIteratorImpl::getLocaleSpecificBreakIterator(const Locale& rLocale) else if (m_xContext.is()) { aLocale = rLocale; - for (lookupTableItem* listItem : lookupTable) { - if (rLocale == listItem->aLocale) - return xBI = listItem->xBI; + for (lookupTableItem& listItem : lookupTable) { + if (rLocale == listItem.aLocale) + return xBI = listItem.xBI; } sal_Unicode under = '_'; @@ -606,7 +602,7 @@ BreakIteratorImpl::getLocaleSpecificBreakIterator(const Locale& rLocale) createLocaleSpecificBreakIterator(rLocale.Language)) || // load default service with name _Unicode createLocaleSpecificBreakIterator("Unicode")) { - lookupTable.push_back( new lookupTableItem(aLocale, xBI) ); + lookupTable.emplace_back( aLocale, xBI ); return xBI; } } -- cgit