summaryrefslogtreecommitdiff
path: root/svl
diff options
context:
space:
mode:
authorEike Rathke <erack@redhat.com>2018-08-16 18:00:29 +0200
committerAndras Timar <andras.timar@collabora.com>2018-08-23 09:16:21 +0200
commit759a3ad2cbe4a7feb86eddae0204ae1d03ac89f2 (patch)
treea45ac93fd585da735ff78d2eb9230cd1319cfaed /svl
parentb047bc2fa3a93f70c7bc4f1737a3c5fbdad3ad71 (diff)
Do not convert YMD date order to YDM and vice versa, tdf#107012 follow-up
Change-Id: I6362caae4dd0764a5f99f1b0453c17ecde4b53f1 Reviewed-on: https://gerrit.libreoffice.org/59213 Reviewed-by: Eike Rathke <erack@redhat.com> Tested-by: Jenkins (cherry picked from commit a4c9e4539ee82c409add42e68329d4eb1100d62f) Reviewed-on: https://gerrit.libreoffice.org/59244 Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com> (cherry picked from commit 16ee6373bab9056650cf3b7a153e832d8d09fc28)
Diffstat (limited to 'svl')
-rw-r--r--svl/source/numbers/zforscan.cxx11
1 files changed, 9 insertions, 2 deletions
diff --git a/svl/source/numbers/zforscan.cxx b/svl/source/numbers/zforscan.cxx
index 0b2fe7ecca28..2e9b7e3d2b57 100644
--- a/svl/source/numbers/zforscan.cxx
+++ b/svl/source/numbers/zforscan.cxx
@@ -2987,7 +2987,11 @@ sal_Int32 ImpSvNumberformatScan::FinalScan( OUString& rString )
switch (pLoc->getDateOrder())
{
case DateOrder::MDY:
- if (IsDateFragment( nDayPos, nMonthPos))
+ // Convert only if the actual format is not of YDM
+ // order (which would be a completely unusual order
+ // anyway, but..), e.g. YYYY.DD.MM not to
+ // YYYY/MM/DD
+ if (IsDateFragment( nDayPos, nMonthPos) && !IsDateFragment( nYearPos, nDayPos))
SwapArrayElements( nDayPos, nMonthPos);
break;
case DateOrder::YMD:
@@ -3010,7 +3014,10 @@ sal_Int32 ImpSvNumberformatScan::FinalScan( OUString& rString )
switch (pLoc->getDateOrder())
{
case DateOrder::DMY:
- if (IsDateFragment( nMonthPos, nDayPos))
+ // Convert only if the actual format is not of YMD
+ // order, e.g. YYYY/MM/DD not to YYYY.DD.MM
+ /* TODO: convert such to DD.MM.YYYY instead? */
+ if (IsDateFragment( nMonthPos, nDayPos) && !IsDateFragment( nYearPos, nMonthPos))
SwapArrayElements( nMonthPos, nDayPos);
break;
case DateOrder::YMD: