From 8175e30b732e3f6f4f1058934e7fe8a1189f40cf Mon Sep 17 00:00:00 2001 From: Aron Budea Date: Tue, 25 Oct 2016 01:01:01 +0200 Subject: tdf#79892: Pass resolved locale to transliterate calls in Calc Instead of ScGlobal::eLnge, use ScGlobal::pSysLocale->GetLanguageTag().getLanguageType(). Change-Id: Ie0aa90098860ac2b6cee195180dbc213eaf3b5f8 Reviewed-on: https://gerrit.libreoffice.org/30240 Tested-by: Jenkins Reviewed-by: Eike Rathke Tested-by: Eike Rathke --- sc/source/core/data/dpcache.cxx | 5 +++-- sc/source/core/tool/cellkeytranslator.cxx | 6 ++++-- sc/source/core/tool/compare.cxx | 5 +++-- 3 files changed, 10 insertions(+), 6 deletions(-) (limited to 'sc/source/core') diff --git a/sc/source/core/data/dpcache.cxx b/sc/source/core/data/dpcache.cxx index 49b1d61452ac..03ba6588301b 100644 --- a/sc/source/core/data/dpcache.cxx +++ b/sc/source/core/data/dpcache.cxx @@ -562,10 +562,11 @@ bool ScDPCache::ValidQuery( SCROW nRow, const ScQueryParam &rParam) const { OUString aQueryStr = rEntry.GetQueryItem().maString.getString(); css::uno::Sequence< sal_Int32 > xOff; + const LanguageType nLang = ScGlobal::pSysLocale->GetLanguageTag().getLanguageType(); OUString aCell = pTransliteration->transliterate( - aCellStr, ScGlobal::eLnge, 0, aCellStr.getLength(), &xOff); + aCellStr, nLang, 0, aCellStr.getLength(), &xOff); OUString aQuer = pTransliteration->transliterate( - aQueryStr, ScGlobal::eLnge, 0, aQueryStr.getLength(), &xOff); + aQueryStr, nLang, 0, aQueryStr.getLength(), &xOff); bOk = (aCell.indexOf( aQuer ) != -1); } if (rEntry.eOp == SC_NOT_EQUAL) diff --git a/sc/source/core/tool/cellkeytranslator.cxx b/sc/source/core/tool/cellkeytranslator.cxx index 2c515e3dc85c..b1d01223e3af 100644 --- a/sc/source/core/tool/cellkeytranslator.cxx +++ b/sc/source/core/tool/cellkeytranslator.cxx @@ -22,6 +22,7 @@ #include #include #include +#include #include @@ -161,9 +162,10 @@ void ScCellKeywordTranslator::transKeyword(OUString& rName, const lang::Locale* if ( !spInstance.get() ) spInstance.reset( new ScCellKeywordTranslator ); - LanguageType eLang = pLocale ? LanguageTag(*pLocale).makeFallback().getLanguageType() : LANGUAGE_SYSTEM; + LanguageType nLang = pLocale ? + LanguageTag(*pLocale).makeFallback().getLanguageType() : ScGlobal::pSysLocale->GetLanguageTag().getLanguageType(); Sequence aOffsets; - rName = spInstance->maTransWrapper.transliterate(rName, eLang, 0, rName.getLength(), &aOffsets); + rName = spInstance->maTransWrapper.transliterate(rName, nLang, 0, rName.getLength(), &aOffsets); lclMatchKeyword(rName, spInstance->maStringNameMap, eOpCode, pLocale); } diff --git a/sc/source/core/tool/compare.cxx b/sc/source/core/tool/compare.cxx index a1dd6026ce17..41359536238e 100644 --- a/sc/source/core/tool/compare.cxx +++ b/sc/source/core/tool/compare.cxx @@ -161,11 +161,12 @@ double CompareFunc( const Compare& rComp, CompareOptions* pOptions ) } else { + const LanguageType nLang = ScGlobal::pSysLocale->GetLanguageTag().getLanguageType(); OUString aCell( pTransliteration->transliterate( - rCell1.maStr.getString(), ScGlobal::eLnge, 0, + rCell1.maStr.getString(), nLang, 0, rCell1.maStr.getLength(), nullptr)); OUString aQuer( pTransliteration->transliterate( - rCell2.maStr.getString(), ScGlobal::eLnge, 0, + rCell2.maStr.getString(), nLang, 0, rCell2.maStr.getLength(), nullptr)); bMatch = (aCell.indexOf( aQuer ) != -1); } -- cgit v1.2.3