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

New commits:
commit 04074fe336be514d3d3f3537e6ff915a7604f6f4
Author:     Tomáš Chvátal <tchva...@suse.com>
AuthorDate: Fri Mar 15 16:43:31 2019 +0100
Commit:     Caolán McNamara <caol...@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 <er...@redhat.com>
    Reviewed-on: https://gerrit.libreoffice.org/69312
    Reviewed-by: Tomáš Chvátal <tchva...@suse.cz>
    Tested-by: Tomáš Chvátal <tchva...@suse.cz>
    Reviewed-by: Caolán McNamara <caol...@redhat.com>
    Tested-by: Caolán McNamara <caol...@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
_______________________________________________
Libreoffice-commits mailing list
libreoffice-comm...@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits

Reply via email to