kbrown / rpms / libreoffice

Forked from rpms/libreoffice 2 years ago
Clone

Blame SOURCES/0007-Fix-ignoring-large-twips-values-like-MSO-does-cp-100.patch

f085be
From 088eef7c97dc4d496826a3f3ae4fdec7f36b6ada Mon Sep 17 00:00:00 2001
f085be
From: =?UTF-8?q?Mat=C3=BA=C5=A1=20Kukan?= <matus.kukan@collabora.com>
f085be
Date: Wed, 9 Jul 2014 14:25:04 +0200
f085be
Subject: [PATCH 007/137] Fix ignoring large twips values like MSO does
f085be
 (cp#1000087)
f085be
MIME-Version: 1.0
f085be
Content-Type: text/plain; charset=UTF-8
f085be
Content-Transfer-Encoding: 8bit
f085be
f085be
which was introduced in 10b4da63e3143108ba75891e9e98fdaa2f7953ab.
f085be
f085be
Since 1e47614cdb84b018a22a334dad0cdd9f0f53892c, only
f085be
convertTwipToMM100Unsigned() ignores large values, which presumably
f085be
was not the intention. At least commit message suggests so.
f085be
f085be
So, move the check back to convertTwipToMM100().
f085be
f085be
(cherry picked from commit 4d1621136c464b462a598571ecdcfe2ae119d8c7)
f085be
f085be
Conflicts:
f085be
	writerfilter/source/dmapper/ConversionHelper.cxx
f085be
f085be
Change-Id: I17040f1987e24789b9de39a837d9f7ecaed520fb
f085be
Reviewed-on: https://gerrit.libreoffice.org/10193
f085be
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
f085be
Tested-by: Caolán McNamara <caolanm@redhat.com>
f085be
---
f085be
 writerfilter/source/dmapper/ConversionHelper.cxx | 10 +++++-----
f085be
 1 file changed, 5 insertions(+), 5 deletions(-)
f085be
f085be
diff --git a/writerfilter/source/dmapper/ConversionHelper.cxx b/writerfilter/source/dmapper/ConversionHelper.cxx
f085be
index 7c0c2a1..40a1a29 100644
f085be
--- a/writerfilter/source/dmapper/ConversionHelper.cxx
f085be
+++ b/writerfilter/source/dmapper/ConversionHelper.cxx
f085be
@@ -230,6 +230,10 @@ OUString ConvertMSFormatStringToSO(
f085be
 
f085be
 sal_Int32 convertTwipToMM100(sal_Int32 _t)
f085be
 {
f085be
+    // It appears that MSO handles large twip values specially, probably legacy 16bit handling,
f085be
+    // anything that's bigger than 32767 appears to be simply ignored.
f085be
+    if( _t >= 0x8000 )
f085be
+        return 0;
f085be
     return TWIP_TO_MM100( _t );
f085be
 }
f085be
 
f085be
@@ -237,11 +241,7 @@ sal_uInt32 convertTwipToMM100Unsigned(sal_Int32 _t)
f085be
 {
f085be
     if( _t < 0 )
f085be
         return 0;
f085be
-    // It appears that MSO handles large twip values specially, probably legacy 16bit handling,
f085be
-    // anything that's bigger than 32767 appears to be simply ignored.
f085be
-    if( _t >= 0x8000 )
f085be
-        return 0;
f085be
-    return TWIP_TO_MM100( _t );
f085be
+    return convertTwipToMM100( _t );
f085be
 }
f085be
 
f085be
 sal_Int32 convertEMUToMM100(sal_Int32 _t)
f085be
-- 
f085be
1.9.3
f085be