diff options
author | Julien Nabet <serval2412@yahoo.fr> | 2019-09-21 15:22:16 +0200 |
---|---|---|
committer | Caolán McNamara <caolanm@redhat.com> | 2019-09-23 09:59:32 +0200 |
commit | 3a70b4a1be0e790579cc15e9917bd575de8d5315 (patch) | |
tree | e0d51361ffacff92fe3b8454a1d292c5d526964d /connectivity | |
parent | tdf#127235 break if object is larger than page (diff) | |
download | core-3a70b4a1be0e790579cc15e9917bd575de8d5315.tar.gz core-3a70b4a1be0e790579cc15e9917bd575de8d5315.zip |
tdf#127657: FIREBIRD error in query input param when referred field is integer
Change-Id: I626c8a8869570986d0293cd9070a1ee40ec585dc
Reviewed-on: https://gerrit.libreoffice.org/79314
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
(cherry picked from commit f23e19cd15f14566832befba73fb6bbc1cffb0d7)
Reviewed-on: https://gerrit.libreoffice.org/79372
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Tested-by: Caolán McNamara <caolanm@redhat.com>
Diffstat (limited to 'connectivity')
-rw-r--r-- | connectivity/source/drivers/firebird/PreparedStatement.cxx | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/connectivity/source/drivers/firebird/PreparedStatement.cxx b/connectivity/source/drivers/firebird/PreparedStatement.cxx index 71a43454f315..4586cc4a3ba4 100644 --- a/connectivity/source/drivers/firebird/PreparedStatement.cxx +++ b/connectivity/source/drivers/firebird/PreparedStatement.cxx @@ -229,6 +229,20 @@ void SAL_CALL OPreparedStatement::setString(sal_Int32 nParameterIndex, assert( pVar->sqlsubtype == static_cast<short>(BlobSubtype::Clob) ); setClob(nParameterIndex, sInput ); break; + case SQL_SHORT: + { + sal_Int32 int32Value = sInput.toInt32(); + if ( (int32Value < std::numeric_limits<sal_Int16>::min()) || + (int32Value > std::numeric_limits<sal_Int16>::max()) ) + { + ::dbtools::throwSQLException( + "Value out of range for SQL_SHORT type", + ::dbtools::StandardSQLState::INVALID_SQL_DATA_TYPE, + *this); + } + setShort(nParameterIndex, int32Value); + break; + } default: ::dbtools::throwSQLException( "Incorrect type for setString", |