[Libreoffice-commits] core.git: Branch 'libreoffice-6-2' - sc/source

Tomáš Chvátal (via logerrit) logerrit at kemper.freedesktop.org
Mon Mar 25 15:35:27 UTC 2019


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

New commits:
commit 04074fe336be514d3d3f3537e6ff915a7604f6f4
Author:     Tomáš Chvátal <tchvatal at suse.com>
AuthorDate: Fri Mar 15 16:43:31 2019 +0100
Commit:     Caolán McNamara <caolanm at redhat.com>
CommitDate: Mon Mar 25 16:35:05 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>
    Reviewed-on: https://gerrit.libreoffice.org/69312
    Reviewed-by: Tomáš Chvátal <tchvatal at suse.cz>
    Tested-by: Tomáš Chvátal <tchvatal at suse.cz>
    Reviewed-by: Caolán McNamara <caolanm at redhat.com>
    Tested-by: Caolán McNamara <caolanm at redhat.com>

diff --git a/sc/source/core/tool/interpr1.cxx b/sc/source/core/tool/interpr1.cxx
index c9c3624bb019..fc0600368b7f 100644
--- a/sc/source/core/tool/interpr1.cxx
+++ b/sc/source/core/tool/interpr1.cxx
@@ -9411,7 +9411,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))
         {
@@ -9451,7 +9456,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