[Libreoffice-commits] core.git: writerfilter/source
Stephan Bergmann
sbergman at redhat.com
Fri Oct 17 07:12:00 PDT 2014
writerfilter/source/dmapper/PropertyMap.cxx | 14 ++++++++++----
1 file changed, 10 insertions(+), 4 deletions(-)
New commits:
commit 6d249bec487208e56a057ea8a25c34c5d3133a23
Author: Stephan Bergmann <sbergman at redhat.com>
Date: Fri Oct 17 16:09:42 2014 +0200
UBSan: Don't force sal_Int32/float values into sal_uInt32
...overload of TagLogger::attribute. Not withstanding that function looks just
silly anyway.
Change-Id: I6cc3c5004884e564aac1397cab6eb6fae7a06f7e
diff --git a/writerfilter/source/dmapper/PropertyMap.cxx b/writerfilter/source/dmapper/PropertyMap.cxx
index bb50c74..9a8102e 100644
--- a/writerfilter/source/dmapper/PropertyMap.cxx
+++ b/writerfilter/source/dmapper/PropertyMap.cxx
@@ -231,16 +231,22 @@ static void lcl_AnyToTag(const uno::Any & rAny)
{
try {
sal_Int32 aInt = 0;
- rAny >>= aInt;
- dmapper_logger->attribute("value", aInt);
+ if (rAny >>= aInt) {
+ dmapper_logger->attribute("value", rAny);
+ } else {
+ dmapper_logger->attribute("unsignedValue", 0);
+ }
sal_uInt32 auInt = 0;
rAny >>= auInt;
dmapper_logger->attribute("unsignedValue", auInt);
float aFloat = 0.0f;
- rAny >>= aFloat;
- dmapper_logger->attribute("floatValue", aFloat);
+ if (rAny >>= aFloat) {
+ dmapper_logger->attribute("floatValue", rAny);
+ } else {
+ dmapper_logger->attribute("unsignedValue", 0);
+ }
OUString aStr;
rAny >>= aStr;
More information about the Libreoffice-commits
mailing list