summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--connectivity/source/commontools/FValue.cxx12
1 files changed, 10 insertions, 2 deletions
diff --git a/connectivity/source/commontools/FValue.cxx b/connectivity/source/commontools/FValue.cxx
index 61f344bb92b5..51adab4f3e98 100644
--- a/connectivity/source/commontools/FValue.cxx
+++ b/connectivity/source/commontools/FValue.cxx
@@ -2086,11 +2086,19 @@ void ORowSetValue::setSigned(bool _bMod)
}
break;
case DataType::BIGINT:
+ {
if ( m_bSigned )
- m_aValue.m_nInt64 = static_cast<sal_Int64>(m_aValue.m_uInt64);
+ {
+ auto nTmp = static_cast<sal_Int64>(m_aValue.m_uInt64);
+ m_aValue.m_nInt64 = nTmp;
+ }
else
- m_aValue.m_uInt64 = static_cast<sal_uInt64>(m_aValue.m_nInt64);
+ {
+ auto nTmp = static_cast<sal_uInt64>(m_aValue.m_nInt64);
+ m_aValue.m_uInt64 = nTmp;
+ }
break;
+ }
}
m_eTypeKind = nType;
}