summaryrefslogtreecommitdiff
path: root/i18npool
diff options
context:
space:
mode:
authorNoel Grandin <noel.grandin@collabora.co.uk>2019-10-16 10:13:30 +0200
committerNoel Grandin <noel.grandin@collabora.co.uk>2019-10-16 12:12:31 +0200
commit4a96fb8ec0130e1036913093836bcf28bc37a49b (patch)
treee7aad9be4ca417e9e64f688cc99bee0638037741 /i18npool
parentf33b6e341fb7dd1ab3acd4fe5457b716be316e89 (diff)
loplugin:bufferadd loosen some constraints
and extend O*StringView to have a constructor that takes a pointer and a length Change-Id: I6120e96280f030757e855a6596efdae438b7e1e8 Reviewed-on: https://gerrit.libreoffice.org/80872 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Diffstat (limited to 'i18npool')
-rw-r--r--i18npool/source/breakiterator/breakiteratorImpl.cxx15
-rw-r--r--i18npool/source/breakiterator/breakiterator_unicode.cxx5
2 files changed, 8 insertions, 12 deletions
diff --git a/i18npool/source/breakiterator/breakiteratorImpl.cxx b/i18npool/source/breakiterator/breakiteratorImpl.cxx
index 41ef28fe0162..30a2d9105459 100644
--- a/i18npool/source/breakiterator/breakiteratorImpl.cxx
+++ b/i18npool/source/breakiterator/breakiteratorImpl.cxx
@@ -581,27 +581,26 @@ BreakIteratorImpl::getLocaleSpecificBreakIterator(const Locale& rLocale)
return xBI = listItem.xBI;
}
- sal_Unicode under = '_';
+ OUStringLiteral under("_");
sal_Int32 l = rLocale.Language.getLength();
sal_Int32 c = rLocale.Country.getLength();
sal_Int32 v = rLocale.Variant.getLength();
- OUStringBuffer aBuf(l+c+v+3);
if ((l > 0 && c > 0 && v > 0 &&
// load service with name <base>_<lang>_<country>_<variant>
- createLocaleSpecificBreakIterator(aBuf.append(rLocale.Language).append(under).append(
- rLocale.Country).append(under).append(rLocale.Variant).makeStringAndClear())) ||
+ createLocaleSpecificBreakIterator(rLocale.Language + under +
+ rLocale.Country + under + rLocale.Variant)) ||
(l > 0 && c > 0 &&
// load service with name <base>_<lang>_<country>
- createLocaleSpecificBreakIterator(aBuf.append(rLocale.Language).append(under).append(
- rLocale.Country).makeStringAndClear())) ||
+ createLocaleSpecificBreakIterator(rLocale.Language + under +
+ rLocale.Country)) ||
(l > 0 && c > 0 && rLocale.Language == "zh" &&
(rLocale.Country == "HK" ||
rLocale.Country == "MO" ) &&
// if the country code is HK or MO, one more step to try TW.
- createLocaleSpecificBreakIterator(aBuf.append(rLocale.Language).append(under).append(
- "TW").makeStringAndClear())) ||
+ createLocaleSpecificBreakIterator(rLocale.Language + under +
+ "TW")) ||
(l > 0 &&
// load service with name <base>_<lang>
createLocaleSpecificBreakIterator(rLocale.Language)) ||
diff --git a/i18npool/source/breakiterator/breakiterator_unicode.cxx b/i18npool/source/breakiterator/breakiterator_unicode.cxx
index 6312d1feecd5..fee0b19dae38 100644
--- a/i18npool/source/breakiterator/breakiterator_unicode.cxx
+++ b/i18npool/source/breakiterator/breakiterator_unicode.cxx
@@ -195,10 +195,7 @@ void BreakIterator_Unicode::loadICUBreakIterator(const css::lang::Locale& rLocal
}
status = U_ZERO_ERROR;
- OStringBuffer aUDName(64);
- aUDName.append(rule);
- aUDName.append('_');
- aUDName.append( aLanguage);
+ OString aUDName = rtl::OStringView(rule) + "_" + aLanguage;
UDataMemory* pUData = udata_open("OpenOffice", "brk", aUDName.getStr(), &status);
if( U_SUCCESS(status) )
rbi.reset(new OOoRuleBasedBreakIterator( pUData, status));