Kaydet (Commit) f2d8aa40 authored tarafından Caolán McNamara's avatar Caolán McNamara

tdf#120576 avoid crash during database migration

0xFFFF cast to short turned into -1 so wasn't seen as > 8000

Change-Id: I57592020c3c31751bec43f2619bf65d41ac47e87
Reviewed-on: https://gerrit.libreoffice.org/65540
Tested-by: Jenkins
Reviewed-by: 's avatarJulien Nabet <serval2412@yahoo.fr>
Reviewed-by: 's avatarCaolán McNamara <caolanm@redhat.com>
Tested-by: 's avatarCaolán McNamara <caolanm@redhat.com>
üst 8d2c4a96
...@@ -207,7 +207,7 @@ void SAL_CALL OPreparedStatement::setString(sal_Int32 nParameterIndex, ...@@ -207,7 +207,7 @@ void SAL_CALL OPreparedStatement::setString(sal_Int32 nParameterIndex,
{ {
str = str.copy(0, max_varchar_len); str = str.copy(0, max_varchar_len);
} }
const short nLength = str.getLength(); const auto nLength = str.getLength();
memcpy(pVar->sqldata, &nLength, 2); memcpy(pVar->sqldata, &nLength, 2);
// Actual data // Actual data
memcpy(pVar->sqldata + 2, str.getStr(), str.getLength()); memcpy(pVar->sqldata + 2, str.getStr(), str.getLength());
...@@ -841,7 +841,7 @@ void SAL_CALL OPreparedStatement::setBytes(sal_Int32 nParameterIndex, ...@@ -841,7 +841,7 @@ void SAL_CALL OPreparedStatement::setBytes(sal_Int32 nParameterIndex,
{ {
xBytesCopy.realloc( nMaxSize ); xBytesCopy.realloc( nMaxSize );
} }
const short nSize = xBytesCopy.getLength(); const auto nSize = xBytesCopy.getLength();
// 8000 corresponds to value from lcl_addDefaultParameters // 8000 corresponds to value from lcl_addDefaultParameters
// in dbaccess/source/filter/hsqldb/createparser.cxx // in dbaccess/source/filter/hsqldb/createparser.cxx
if (nSize > 8000) if (nSize > 8000)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment