diff options
author | Caolán McNamara <caolanm@redhat.com> | 2019-07-24 11:22:58 +0100 |
---|---|---|
committer | Caolán McNamara <caolanm@redhat.com> | 2019-07-24 22:21:32 +0200 |
commit | 30320abbef8fabfeadda2b31b72f595c4a1c1ed9 (patch) | |
tree | 986c89aa358e066887ff1efa757730e6e665b740 /connectivity/source/commontools/FValue.cxx | |
parent | ceac24b4a140a471a36f423bf48dce32860e8911 (diff) |
cid#1448360 Assignment of overlapping memory
Change-Id: Ifefa007ff7534e65cc35cdbcb4983012b36ed6e0
Reviewed-on: https://gerrit.libreoffice.org/76248
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Tested-by: Caolán McNamara <caolanm@redhat.com>
Diffstat (limited to 'connectivity/source/commontools/FValue.cxx')
-rw-r--r-- | connectivity/source/commontools/FValue.cxx | 12 |
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; } |