summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEike Rathke <erack@redhat.com>2016-12-05 22:23:39 +0100
committerEike Rathke <erack@redhat.com>2016-12-05 22:24:26 +0100
commit39aa5c2c653f36393416a6aadd6e599051bbfe7b (patch)
tree20d66ed46f85fa9efb355eb332601b27cef47f8f
parentdce3d70d269263f35ac6921d61ee6569e75cadbf (diff)
attempt to fix Linux-rpm_deb-x86_71-TDF tinderbox build for 5-2, tdf#101363
See http://tinderbox.libreoffice.org/cgi-bin/gunzip.cgi?tree=libreoffice-5-2&brief-log=1480964401.32227 (as long as it is there) Change-Id: If119a19e2f5dbe53298f0b30b5749997d99bf884
-rw-r--r--sc/source/filter/excel/xetable.cxx9
1 files changed, 8 insertions, 1 deletions
diff --git a/sc/source/filter/excel/xetable.cxx b/sc/source/filter/excel/xetable.cxx
index d22eb46a9e57..8d3bcfe1756a 100644
--- a/sc/source/filter/excel/xetable.cxx
+++ b/sc/source/filter/excel/xetable.cxx
@@ -1691,7 +1691,14 @@ void XclExpColinfo::SaveXml( XclExpXmlStream& rStrm )
// 100 number - used to limit precision to 0.01 with formula =Truncate( {value}*100+0.5 ) / 100
// 0.5 number (0.005 to output value) - used to increase value before truncating,
// to avoid situation when 2.997 will be truncated to 2.99 and not to 3.00
- const double nTruncatedExcelColumnWidth = std::trunc( nExcelColumnWidth * 100.0 + 0.5 ) / 100.0;
+
+ // First create an integer value to not have a double floating point with
+ // something optimized away or into.. yes that was significant in a
+ // Linux-rpm_deb-x86_71-TDF tinderbox build that oddly produced 24.23
+ // instead of 24 in a test case but only for 5-2 ...
+ const sal_Int32 nTruncatedInt = static_cast<sal_Int32>(std::trunc( nExcelColumnWidth * 100.0 + 0.5 ));
+ const double nTruncatedExcelColumnWidth = static_cast<double>(nTruncatedInt) / 100.0;
+
rStrm.GetCurrentStream()->singleElement( XML_col,
// OOXTODO: XML_bestFit,
XML_collapsed, XclXmlUtils::ToPsz( ::get_flag( mnFlags, EXC_COLINFO_COLLAPSED ) ),