[Libreoffice-commits] core.git: Branch 'libreoffice-5-2' - xmloff/source

Eike Rathke erack at redhat.com
Tue Aug 16 20:02:17 UTC 2016


 xmloff/source/style/xmlnumfi.cxx |   16 +++++++++-------
 1 file changed, 9 insertions(+), 7 deletions(-)

New commits:
commit 3a3cd19df142dddeb74bee6a7a38ba8419cd86be
Author: Eike Rathke <erack at redhat.com>
Date:   Wed Aug 10 18:33:41 2016 +0200

    XML number format: do not enquote space followed by minus, tdf#97837 follow-up
    
    Which with
    [$kr.-406] #.##0,00;[RED][$kr.-406] -#.##0,00
    saved and reloaded gave
    [$kr.-406] #.##0,00;[RED][$kr.-406]" -"#.##0,00
    and thus an almost identical duplicated format with the built-in format.
    
    Change-Id: Ie39b97576842bc29ac301d2fe64f7331f6c57fc4
    (cherry picked from commit 4d993ae8f267e35f7c030861a92226c940bb46cc)
    Reviewed-on: https://gerrit.libreoffice.org/28038
    Tested-by: Jenkins <ci at libreoffice.org>
    Reviewed-by: Caolán McNamara <caolanm at redhat.com>
    Tested-by: Caolán McNamara <caolanm at redhat.com>

diff --git a/xmloff/source/style/xmlnumfi.cxx b/xmloff/source/style/xmlnumfi.cxx
index 9ea4e74..3120bea 100644
--- a/xmloff/source/style/xmlnumfi.cxx
+++ b/xmloff/source/style/xmlnumfi.cxx
@@ -792,14 +792,16 @@ static void lcl_EnquoteIfNecessary( OUStringBuffer& rContent, const SvXMLNumForm
     bool bQuote = true;
     sal_Int32 nLength = rContent.getLength();
 
-    if ( ( nLength == 1 &&
-            lcl_ValidChar( rContent[0], rParent ) ) ||
-         ( nLength == 2 &&
-             lcl_ValidChar( rContent[0], rParent ) &&
-             rContent[1] == ' ' ) )
+    if ((nLength == 1 && lcl_ValidChar( rContent[0], rParent)) ||
+            (nLength == 2 &&
+             ((rContent[0] == ' ' && rContent[1] == '-') ||
+              (rContent[1] == ' ' && lcl_ValidChar( rContent[0], rParent)))))
     {
-        //  don't quote single separator characters like space or percent,
-        //  or separator characters followed by space (used in date formats)
+        //  Don't quote single separator characters like space or percent,
+        //  or separator characters followed by space (used in date formats).
+        //  Or space followed by minus (used in currency formats) that would
+        //  lead to almost duplicated formats with built-in formats just with
+        //  the difference of quotes.
         bQuote = false;
     }
     else if ( rParent.GetType() == XML_TOK_STYLES_PERCENTAGE_STYLE && nLength > 1 )


More information about the Libreoffice-commits mailing list