diff options
Diffstat (limited to 'i18npool')
-rw-r--r-- | i18npool/source/transliteration/transliteration_body.cxx | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/i18npool/source/transliteration/transliteration_body.cxx b/i18npool/source/transliteration/transliteration_body.cxx index 69ba0c236714..8bf5d6bdd4b1 100644 --- a/i18npool/source/transliteration/transliteration_body.cxx +++ b/i18npool/source/transliteration/transliteration_body.cxx @@ -264,11 +264,14 @@ static OUString transliterate_titlecase_Impl( // The rest of the text should just become lowercase. aRes = xCharClassImpl->toTitle( aResolvedLigature, 0, nResolvedLen, rLocale ) + xCharClassImpl->toLower( aText, 1, aText.getLength() - 1, rLocale ); - pOffset->realloc( aRes.getLength() ); + if (pOffset) + { + pOffset->realloc( aRes.getLength() ); - auto [begin, end] = asNonConstRange(*pOffset); - sal_Int32* pOffsetInt = std::fill_n(begin, nResolvedLen, 0); - std::iota(pOffsetInt, end, 1); + auto [begin, end] = asNonConstRange(*pOffset); + sal_Int32* pOffsetInt = std::fill_n(begin, nResolvedLen, 0); + std::iota(pOffsetInt, end, 1); + } } return aRes; } |