mirror of
https://git.freebsd.org/ports.git
synced 2025-07-18 01:39:16 -04:00
editors/libreoffice: unbreak against ICU 58.1
i18npool/source/breakiterator/breakiterator_unicode.cxx:69:13: error: 'setBreakType' is a private member of 'icu::RuleBasedBreakIterator' setBreakType(type); ^ /usr/local/include/unicode/rbbi.h:657:10: note: declared private here void setBreakType(int32_t type); ^ 1 error generated. PR: 214437 Obtained from: upstream Approved by: portmgr blanket
This commit is contained in:
parent
62626e11a1
commit
625849ce67
Notes:
svn2git
2021-03-31 03:12:20 +00:00
svn path=/head/; revision=426173
2 changed files with 84 additions and 0 deletions
|
@ -0,0 +1,42 @@
|
|||
Minimal exceprt from upstream fix only to unbreak build
|
||||
|
||||
https://cgit.freedesktop.org/libreoffice/core/commit/?id=3e42714c76b1347babfdea0564009d8d82a83af4
|
||||
|
||||
--- i18npool/source/breakiterator/breakiterator_unicode.cxx.orig 2016-05-04 21:28:24 UTC
|
||||
+++ i18npool/source/breakiterator/breakiterator_unicode.cxx
|
||||
@@ -64,10 +64,13 @@ BreakIterator_Unicode::~BreakIterator_Un
|
||||
class OOoRuleBasedBreakIterator : public RuleBasedBreakIterator
|
||||
{
|
||||
public:
|
||||
+#if (U_ICU_VERSION_MAJOR_NUM < 58)
|
||||
+ // RuleBasedBreakIterator::setBreakType() is private as of ICU 58.
|
||||
inline void publicSetBreakType(int32_t type)
|
||||
{
|
||||
setBreakType(type);
|
||||
};
|
||||
+#endif
|
||||
OOoRuleBasedBreakIterator(UDataMemory* image,
|
||||
UErrorCode &status)
|
||||
: RuleBasedBreakIterator(image, status)
|
||||
@@ -143,12 +146,21 @@ void SAL_CALL BreakIterator_Unicode::loa
|
||||
}
|
||||
}
|
||||
if (rbi) {
|
||||
+#if (U_ICU_VERSION_MAJOR_NUM < 58)
|
||||
+ // ICU 58 made RuleBasedBreakIterator::setBreakType() private
|
||||
+ // instead of protected, so the old workaround of
|
||||
+ // https://ssl.icu-project.org/trac/ticket/5498
|
||||
+ // doesn't work anymore. However, they also claim to have fixed
|
||||
+ // the cause that an initial fBreakType==-1 would lead to an
|
||||
+ // endless loop under some circumstances.
|
||||
+ // Let's see ...
|
||||
switch (rBreakType) {
|
||||
case LOAD_CHARACTER_BREAKITERATOR: rbi->publicSetBreakType(UBRK_CHARACTER); break;
|
||||
case LOAD_WORD_BREAKITERATOR: rbi->publicSetBreakType(UBRK_WORD); break;
|
||||
case LOAD_SENTENCE_BREAKITERATOR: rbi->publicSetBreakType(UBRK_SENTENCE); break;
|
||||
case LOAD_LINE_BREAKITERATOR: rbi->publicSetBreakType(UBRK_LINE); break;
|
||||
}
|
||||
+#endif
|
||||
icuBI->aBreakIterator = rbi;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,42 @@
|
|||
Minimal exceprt from upstream fix only to unbreak build
|
||||
|
||||
https://cgit.freedesktop.org/libreoffice/core/commit/?id=3e42714c76b1347babfdea0564009d8d82a83af4
|
||||
|
||||
--- i18npool/source/breakiterator/breakiterator_unicode.cxx.orig 2015-04-20 19:36:29 UTC
|
||||
+++ i18npool/source/breakiterator/breakiterator_unicode.cxx
|
||||
@@ -65,10 +65,13 @@ BreakIterator_Unicode::~BreakIterator_Un
|
||||
class OOoRuleBasedBreakIterator : public RuleBasedBreakIterator
|
||||
{
|
||||
public:
|
||||
+#if (U_ICU_VERSION_MAJOR_NUM < 58)
|
||||
+ // RuleBasedBreakIterator::setBreakType() is private as of ICU 58.
|
||||
inline void publicSetBreakType(int32_t type)
|
||||
{
|
||||
setBreakType(type);
|
||||
};
|
||||
+#endif
|
||||
OOoRuleBasedBreakIterator(UDataMemory* image,
|
||||
UErrorCode &status)
|
||||
: RuleBasedBreakIterator(image, status)
|
||||
@@ -144,12 +147,21 @@ void SAL_CALL BreakIterator_Unicode::loa
|
||||
}
|
||||
}
|
||||
if (rbi) {
|
||||
+#if (U_ICU_VERSION_MAJOR_NUM < 58)
|
||||
+ // ICU 58 made RuleBasedBreakIterator::setBreakType() private
|
||||
+ // instead of protected, so the old workaround of
|
||||
+ // https://ssl.icu-project.org/trac/ticket/5498
|
||||
+ // doesn't work anymore. However, they also claim to have fixed
|
||||
+ // the cause that an initial fBreakType==-1 would lead to an
|
||||
+ // endless loop under some circumstances.
|
||||
+ // Let's see ...
|
||||
switch (rBreakType) {
|
||||
case LOAD_CHARACTER_BREAKITERATOR: rbi->publicSetBreakType(UBRK_CHARACTER); break;
|
||||
case LOAD_WORD_BREAKITERATOR: rbi->publicSetBreakType(UBRK_WORD); break;
|
||||
case LOAD_SENTENCE_BREAKITERATOR: rbi->publicSetBreakType(UBRK_SENTENCE); break;
|
||||
case LOAD_LINE_BREAKITERATOR: rbi->publicSetBreakType(UBRK_LINE); break;
|
||||
}
|
||||
+#endif
|
||||
icuBI->aBreakIterator = rbi;
|
||||
}
|
||||
}
|
Loading…
Add table
Reference in a new issue