[Libreoffice-commits] core.git: sc/source

Tomáš Chvátal (via logerrit) logerrit at kemper.freedesktop.org
Fri Mar 22 19:58:44 UTC 2019


 sc/source/core/tool/interpr1.cxx |   14 ++++++++++++--
 1 file changed, 12 insertions(+), 2 deletions(-)

New commits:
commit 3aaee1170807ba5b8a301291800a89e96c012832
Author:     Tomáš Chvátal <tchvatal at suse.com>
AuthorDate: Fri Mar 15 16:43:31 2019 +0100
Commit:     Eike Rathke <erack at redhat.com>
CommitDate: Fri Mar 22 20:58:16 2019 +0100

    Use RegexMatcher.find(pos, status) call on old ICU
    
    The RegexMatcher.find(status) is new since icu 55 and this works even
    on the old releases thus revert there to the available albeit slower
    call.
    
    Change-Id: I964c10efd15515b04ac9037cda3b5b309910baf5
    Reviewed-on: https://gerrit.libreoffice.org/69311
    Tested-by: Jenkins
    Reviewed-by: Eike Rathke <erack at redhat.com>

diff --git a/sc/source/core/tool/interpr1.cxx b/sc/source/core/tool/interpr1.cxx
index 75fd8f82b874..0281ab3f4cbf 100644
--- a/sc/source/core/tool/interpr1.cxx
+++ b/sc/source/core/tool/interpr1.cxx
@@ -9408,7 +9408,12 @@ void ScInterpreter::ScRegex()
     {
         // Find n-th occurrence.
         sal_Int32 nCount = 0;
-        while (aRegexMatcher.find( status) && U_SUCCESS(status) && ++nCount < nOccurrence)
+#if (U_ICU_VERSION_MAJOR_NUM < 55)
+        int32_t nStartPos = 0;
+        while (aRegexMatcher.find(nStartPos, status) && U_SUCCESS(status) && ++nCount < nOccurrence)
+#else
+        while (aRegexMatcher.find(status) && U_SUCCESS(status) && ++nCount < nOccurrence)
+#endif
             ;
         if (U_FAILURE(status))
         {
@@ -9448,7 +9453,12 @@ void ScInterpreter::ScRegex()
     {
         // Replace n-th occurrence of match with replacement.
         sal_Int32 nCount = 0;
-        while (aRegexMatcher.find( status) && U_SUCCESS(status))
+#if (U_ICU_VERSION_MAJOR_NUM < 55)
+        int32_t nStartPos = 0;
+        while (aRegexMatcher.find(nStartPos, status) && U_SUCCESS(status))
+#else
+        while (aRegexMatcher.find(status) && U_SUCCESS(status))
+#endif
         {
             // XXX NOTE: After several RegexMatcher::find() the
             // RegexMatcher::appendReplacement() still starts at the


More information about the Libreoffice-commits mailing list