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

Eike Rathke erack at redhat.com
Wed Aug 30 14:17:13 UTC 2017


 svl/source/numbers/zforfind.cxx |    7 +++++++
 svl/source/numbers/zforlist.cxx |    2 +-
 2 files changed, 8 insertions(+), 1 deletion(-)

New commits:
commit f49ef5b771910384de0bc2d4c86ad3e0442b295a
Author: Eike Rathke <erack at redhat.com>
Date:   Wed Aug 30 15:55:25 2017 +0200

    Force ISO date format again if ISO input, tdf#91758 follow-up
    
    ... and input doesn't match a date acceptance pattern, even if less than 3
    digits in year.
    
    Change-Id: Ib25aa8e813c06a224cfa95ead79c0f3bf2d2d672

diff --git a/svl/source/numbers/zforfind.cxx b/svl/source/numbers/zforfind.cxx
index 61af0c9c3c6a..e1059936ea41 100644
--- a/svl/source/numbers/zforfind.cxx
+++ b/svl/source/numbers/zforfind.cxx
@@ -1047,6 +1047,13 @@ bool ImpSvNumberInputScan::CanForceToIso8601( DateOrder eDateOrder )
     }
     else
     {
+        if (eDateOrder == DateOrder::Invalid)
+        {
+            // As if any of the cases below can be applied, but only if a
+            // locale dependent date pattern was not matched.
+            return (GetDatePatternNumbers() != nNumericsCnt) || !IsDatePatternNumberOfType(0,'Y');
+        }
+
         nCanForceToIso8601 = 1;
     }
 
diff --git a/svl/source/numbers/zforlist.cxx b/svl/source/numbers/zforlist.cxx
index 8099fe888c33..a8abeca2e01a 100644
--- a/svl/source/numbers/zforlist.cxx
+++ b/svl/source/numbers/zforlist.cxx
@@ -1097,7 +1097,7 @@ bool SvNumberFormatter::IsNumberFormat(const OUString& sString,
         {
         case css::util::NumberFormat::DATE :
             // Preserve ISO 8601 input.
-            if (pStringScanner->CanForceToIso8601( DateOrder::DMY))
+            if (pStringScanner->CanForceToIso8601( DateOrder::Invalid))
             {
                 F_Index = GetFormatIndex( NF_DATE_DIN_YYYYMMDD, ActLnge );
             }


More information about the Libreoffice-commits mailing list