fix for ICU 61

f41
Stephan Bergmann 7 years ago
parent f15cf6739b
commit 15431538c4

@ -0,0 +1,262 @@
From cc0b086988c23525f6f7825cb735e8a0d1c54720 Mon Sep 17 00:00:00 2001
From: Eike Rathke <erack@redhat.com>
Date: Mon, 18 Dec 2017 20:28:07 +0100
Subject: [PATCH] Explicitly qualify ICU types with icu:: namespace
It will be required by ICU 61 anyway, see
https://ssl.icu-project.org/repos/icu/trunk/icu4c/readme.html#RecBuild
Change-Id: I16b6bc8b8c49713f32424df5fc6db494df7b6892
Reviewed-on: https://gerrit.libreoffice.org/46738
Reviewed-by: Eike Rathke <erack@redhat.com>
Tested-by: Eike Rathke <erack@redhat.com>
(cherry picked from commit f7961456d81c3ee6ee4c13eac9ef7add6c7ea6b5)
Reviewed-on: https://gerrit.libreoffice.org/56664
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
---
i18npool/inc/collator_unicode.hxx | 2 +-
.../breakiterator/breakiterator_unicode.cxx | 26 +++++++++----------
i18npool/source/collator/collator_unicode.cxx | 16 ++++++------
i18npool/source/collator/gencoll_rule.cxx | 2 +-
.../source/ordinalsuffix/ordinalsuffix.cxx | 2 +-
.../transliteration/ignoreDiacritics_CTL.cxx | 6 ++---
6 files changed, 27 insertions(+), 27 deletions(-)
diff --git a/i18npool/inc/collator_unicode.hxx b/i18npool/inc/collator_unicode.hxx
index 69d317797870..d943bc9bc2c1 100644
--- a/i18npool/inc/collator_unicode.hxx
+++ b/i18npool/inc/collator_unicode.hxx
@@ -63,7 +63,7 @@ public:
private:
const sal_Char *implementationName;
- RuleBasedCollator *uca_base, *collator;
+ icu::RuleBasedCollator *uca_base, *collator;
#ifndef DISABLE_DYNLOADING
oslModule hModule;
#endif
diff --git a/i18npool/source/breakiterator/breakiterator_unicode.cxx b/i18npool/source/breakiterator/breakiterator_unicode.cxx
index b4ca111179c1..77fabbfce84b 100644
--- a/i18npool/source/breakiterator/breakiterator_unicode.cxx
+++ b/i18npool/source/breakiterator/breakiterator_unicode.cxx
@@ -56,14 +56,14 @@ BreakIterator_Unicode::~BreakIterator_Unicode()
}
/*
- Wrapper class to provide public access to the RuleBasedBreakIterator's
+ Wrapper class to provide public access to the icu::RuleBasedBreakIterator's
setbreakType method.
*/
-class OOoRuleBasedBreakIterator : public RuleBasedBreakIterator
+class OOoRuleBasedBreakIterator : public icu::RuleBasedBreakIterator
{
public:
#if (U_ICU_VERSION_MAJOR_NUM < 58)
- // RuleBasedBreakIterator::setBreakType() is private as of ICU 58.
+ // icu::RuleBasedBreakIterator::setBreakType() is private as of ICU 58.
void publicSetBreakType(int32_t type)
{
setBreakType(type);
@@ -71,7 +71,7 @@ class OOoRuleBasedBreakIterator : public RuleBasedBreakIterator
#endif
OOoRuleBasedBreakIterator(UDataMemory* image,
UErrorCode &status)
- : RuleBasedBreakIterator(image, status)
+ : icu::RuleBasedBreakIterator(image, status)
{ };
};
@@ -334,7 +334,7 @@ sal_Int32 SAL_CALL BreakIterator_Unicode::nextCharacters( const OUString& Text,
icu::BreakIterator* pBI = character.mpValue->mpBreakIterator.get();
for (nDone = 0; nDone < nCount; nDone++) {
nStartPos = pBI->following(nStartPos);
- if (nStartPos == BreakIterator::DONE)
+ if (nStartPos == icu::BreakIterator::DONE)
return Text.getLength();
}
} else { // for CHARACTER mode
@@ -353,7 +353,7 @@ sal_Int32 SAL_CALL BreakIterator_Unicode::previousCharacters( const OUString& Te
icu::BreakIterator* pBI = character.mpValue->mpBreakIterator.get();
for (nDone = 0; nDone < nCount; nDone++) {
nStartPos = pBI->preceding(nStartPos);
- if (nStartPos == BreakIterator::DONE)
+ if (nStartPos == icu::BreakIterator::DONE)
return 0;
}
} else { // for BS to delete one char and CHARACTER mode.
@@ -371,7 +371,7 @@ Boundary SAL_CALL BreakIterator_Unicode::nextWord( const OUString& Text, sal_Int
Boundary rv;
rv.startPos = icuBI->mpValue->mpBreakIterator->following(nStartPos);
- if( rv.startPos >= Text.getLength() || rv.startPos == BreakIterator::DONE )
+ if( rv.startPos >= Text.getLength() || rv.startPos == icu::BreakIterator::DONE )
rv.endPos = result.startPos;
else {
if ( (rWordType == WordType::ANYWORD_IGNOREWHITESPACES ||
@@ -380,7 +380,7 @@ Boundary SAL_CALL BreakIterator_Unicode::nextWord( const OUString& Text, sal_Int
rv.startPos = icuBI->mpValue->mpBreakIterator->following(rv.startPos);
rv.endPos = icuBI->mpValue->mpBreakIterator->following(rv.startPos);
- if(rv.endPos == BreakIterator::DONE)
+ if(rv.endPos == icu::BreakIterator::DONE)
rv.endPos = rv.startPos;
}
return rv;
@@ -394,7 +394,7 @@ Boundary SAL_CALL BreakIterator_Unicode::previousWord(const OUString& Text, sal_
Boundary rv;
rv.startPos = icuBI->mpValue->mpBreakIterator->preceding(nStartPos);
- if( rv.startPos < 0 || rv.startPos == BreakIterator::DONE)
+ if( rv.startPos < 0 || rv.startPos == icu::BreakIterator::DONE)
rv.endPos = rv.startPos;
else {
if ( (rWordType == WordType::ANYWORD_IGNOREWHITESPACES ||
@@ -403,7 +403,7 @@ Boundary SAL_CALL BreakIterator_Unicode::previousWord(const OUString& Text, sal_
rv.startPos = icuBI->mpValue->mpBreakIterator->preceding(rv.startPos);
rv.endPos = icuBI->mpValue->mpBreakIterator->following(rv.startPos);
- if(rv.endPos == BreakIterator::DONE)
+ if(rv.endPos == icu::BreakIterator::DONE)
rv.endPos = rv.startPos;
}
return rv;
@@ -435,9 +435,9 @@ Boundary SAL_CALL BreakIterator_Unicode::getWordBoundary( const OUString& Text,
rv.endPos = icuBI->mpValue->mpBreakIterator->following(nPos);
}
}
- if (rv.startPos == BreakIterator::DONE)
+ if (rv.startPos == icu::BreakIterator::DONE)
rv.startPos = rv.endPos;
- else if (rv.endPos == BreakIterator::DONE)
+ else if (rv.endPos == icu::BreakIterator::DONE)
rv.endPos = rv.startPos;
return rv;
@@ -502,7 +502,7 @@ LineBreakResults SAL_CALL BreakIterator_Unicode::getLineBreak(
lbr.breakIndex = nStartPos;
lbr.breakType = BreakType::WORDBOUNDARY;
} else if (hOptions.rHyphenator.is()) { //Hyphenation break
- sal_Int32 boundary_with_punctuation = (pLineBI->next() != BreakIterator::DONE) ? pLineBI->current() : 0;
+ sal_Int32 boundary_with_punctuation = (pLineBI->next() != icu::BreakIterator::DONE) ? pLineBI->current() : 0;
pLineBI->preceding(nStartPos + 1); // reset to check correct hyphenation of "word-word"
sal_Int32 nStartPosWordEnd = nStartPos;
diff --git a/i18npool/source/collator/collator_unicode.cxx b/i18npool/source/collator/collator_unicode.cxx
index 22b7ed9ae492..552c95ed35f1 100644
--- a/i18npool/source/collator/collator_unicode.cxx
+++ b/i18npool/source/collator/collator_unicode.cxx
@@ -138,7 +138,7 @@ Collator_Unicode::loadCollatorAlgorithm(const OUString& rAlgorithm, const lang::
UErrorCode status = U_ZERO_ERROR;
OUString rule = LocaleDataImpl::get()->getCollatorRuleByAlgorithm(rLocale, rAlgorithm);
if (!rule.isEmpty()) {
- collator = new RuleBasedCollator(reinterpret_cast<const UChar *>(rule.getStr()), status);
+ collator = new icu::RuleBasedCollator(reinterpret_cast<const UChar *>(rule.getStr()), status);
if (! U_SUCCESS(status)) throw RuntimeException();
}
if (!collator && OUString(LOCAL_RULE_LANGS).indexOf(rLocale.Language) >= 0) {
@@ -343,7 +343,7 @@ Collator_Unicode::loadCollatorAlgorithm(const OUString& rAlgorithm, const lang::
size_t ruleImageSize = funclen();
#if (U_ICU_VERSION_MAJOR_NUM == 4) && (U_ICU_VERSION_MINOR_NUM <= 2)
- uca_base = new RuleBasedCollator(static_cast<UChar*>(NULL), status);
+ uca_base = new icu::RuleBasedCollator(static_cast<UChar*>(NULL), status);
#else
// Not only changed ICU 53.1 the API behavior that a negative
// length (ruleImageSize) now leads to failure, but also that
@@ -354,11 +354,11 @@ Collator_Unicode::loadCollatorAlgorithm(const OUString& rAlgorithm, const lang::
// The default collator of the en-US locale would also fulfill
// the requirement. The collator of the actual locale or the
// NULL (default) locale does not.
- uca_base = static_cast<RuleBasedCollator*>(icu::Collator::createInstance(
+ uca_base = static_cast<icu::RuleBasedCollator*>(icu::Collator::createInstance(
icu::Locale::getRoot(), status));
#endif
if (! U_SUCCESS(status)) throw RuntimeException();
- collator = new RuleBasedCollator(
+ collator = new icu::RuleBasedCollator(
reinterpret_cast<const uint8_t*>(ruleImage), ruleImageSize, uca_base, status);
if (! U_SUCCESS(status)) throw RuntimeException();
}
@@ -372,17 +372,17 @@ Collator_Unicode::loadCollatorAlgorithm(const OUString& rAlgorithm, const lang::
*/
icu::Locale icuLocale( LanguageTagIcu::getIcuLocale( LanguageTag( rLocale), rAlgorithm));
// load ICU collator
- collator = static_cast<RuleBasedCollator*>( icu::Collator::createInstance(icuLocale, status) );
+ collator = static_cast<icu::RuleBasedCollator*>( icu::Collator::createInstance(icuLocale, status) );
if (! U_SUCCESS(status)) throw RuntimeException();
}
}
if (options & CollatorOptions::CollatorOptions_IGNORE_CASE_ACCENT)
- collator->setStrength(Collator::PRIMARY);
+ collator->setStrength(icu::Collator::PRIMARY);
else if (options & CollatorOptions::CollatorOptions_IGNORE_CASE)
- collator->setStrength(Collator::SECONDARY);
+ collator->setStrength(icu::Collator::SECONDARY);
else
- collator->setStrength(Collator::TERTIARY);
+ collator->setStrength(icu::Collator::TERTIARY);
return 0;
}
diff --git a/i18npool/source/collator/gencoll_rule.cxx b/i18npool/source/collator/gencoll_rule.cxx
index 7d795b5af079..3048d12bb90b 100644
--- a/i18npool/source/collator/gencoll_rule.cxx
+++ b/i18npool/source/collator/gencoll_rule.cxx
@@ -113,7 +113,7 @@ SAL_IMPLEMENT_MAIN_WITH_ARGS(argc, argv)
//UCollator *coll = ucol_openRules(Obuf.getStr(), Obuf.getLength(), UCOL_OFF,
// UCOL_DEFAULT_STRENGTH, &parseError, &status);
- auto coll = o3tl::make_unique<RuleBasedCollator>(reinterpret_cast<const UChar *>(Obuf.getStr()), status);
+ auto coll = o3tl::make_unique<icu::RuleBasedCollator>(reinterpret_cast<const UChar *>(Obuf.getStr()), status);
if (U_SUCCESS(status)) {
std::vector<uint8_t> data;
diff --git a/i18npool/source/ordinalsuffix/ordinalsuffix.cxx b/i18npool/source/ordinalsuffix/ordinalsuffix.cxx
index a3e7d4ab6e8e..f32579894d44 100644
--- a/i18npool/source/ordinalsuffix/ordinalsuffix.cxx
+++ b/i18npool/source/ordinalsuffix/ordinalsuffix.cxx
@@ -79,7 +79,7 @@ uno::Sequence< OUString > SAL_CALL OrdinalSuffixService::getOrdinalSuffix( sal_I
if (!U_SUCCESS(nCode))
return retValue;
- std::unique_ptr<NumberFormat> xNumberFormat(icu::NumberFormat::createInstance(aIcuLocale, nCode));
+ std::unique_ptr<icu::NumberFormat> xNumberFormat(icu::NumberFormat::createInstance(aIcuLocale, nCode));
if (!U_SUCCESS(nCode))
return retValue;
diff --git a/i18npool/source/transliteration/ignoreDiacritics_CTL.cxx b/i18npool/source/transliteration/ignoreDiacritics_CTL.cxx
index 0ddfe645abaa..2b5ca1ed1bdb 100644
--- a/i18npool/source/transliteration/ignoreDiacritics_CTL.cxx
+++ b/i18npool/source/transliteration/ignoreDiacritics_CTL.cxx
@@ -35,7 +35,7 @@ ignoreDiacritics_CTL::transliterateChar2Char(sal_Unicode nInChar)
if (!m_transliterator)
throw css::uno::RuntimeException();
- UnicodeString aChar(nInChar);
+ icu::UnicodeString aChar(nInChar);
m_transliterator->transliterate(aChar);
if (aChar.isEmpty())
@@ -68,7 +68,7 @@ ignoreDiacritics_CTL::folding(const OUString& rInStr, sal_Int32 nStartPos,
{
sal_Int32 nIndex = nPosition;
UChar32 nChar = rInStr.iterateCodePoints(&nIndex);
- UnicodeString aUStr(nChar);
+ icu::UnicodeString aUStr(nChar);
m_transliterator->transliterate(aUStr);
if (nOffset + aUStr.length() > rOffset.getLength())
@@ -87,7 +87,7 @@ ignoreDiacritics_CTL::folding(const OUString& rInStr, sal_Int32 nStartPos,
}
else
{
- UnicodeString aUStr(reinterpret_cast<const UChar*>(rInStr.getStr()) + nStartPos, nCount);
+ icu::UnicodeString aUStr(reinterpret_cast<const UChar*>(rInStr.getStr()) + nStartPos, nCount);
m_transliterator->transliterate(aUStr);
return OUString(reinterpret_cast<const sal_Unicode*>(aUStr.getBuffer()), aUStr.length());
}
--
2.17.1

@ -273,6 +273,7 @@ Patch3: 0001-gtk3-only-for-3.20.patch
Patch4: 0001-Related-tdf-105998-except-cut-and-paste-as-bitmap-in.patch Patch4: 0001-Related-tdf-105998-except-cut-and-paste-as-bitmap-in.patch
Patch5: 0001-request-installation-of-langpack-via-packagekit.patch Patch5: 0001-request-installation-of-langpack-via-packagekit.patch
Patch6: 0001-tdf-117537-block-rentry-to-CheckAndMarkUnknownFont.patch Patch6: 0001-tdf-117537-block-rentry-to-CheckAndMarkUnknownFont.patch
Patch7: 0001-Explicitly-qualify-ICU-types-with-icu-namespace.patch
%if 0%{?rhel} %if 0%{?rhel}
# not upstreamed # not upstreamed
@ -2323,6 +2324,7 @@ done
%changelog %changelog
* Fri Jun 22 2018 Caolán McNamara <caolanm@redhat.com> - 1:6.0.5.2-1 * Fri Jun 22 2018 Caolán McNamara <caolanm@redhat.com> - 1:6.0.5.2-1
- latest 6.0 release - latest 6.0 release
- fix for ICU 61
* Tue Jun 19 2018 Miro Hrončok <mhroncok@redhat.com> - 1:6.0.4.2-5 * Tue Jun 19 2018 Miro Hrončok <mhroncok@redhat.com> - 1:6.0.4.2-5
- Rebuilt for Python 3.7 - Rebuilt for Python 3.7

Loading…
Cancel
Save