diff options
Diffstat (limited to 'connectivity/source/drivers/firebird/ResultSet.cxx')
-rw-r--r-- | connectivity/source/drivers/firebird/ResultSet.cxx | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/connectivity/source/drivers/firebird/ResultSet.cxx b/connectivity/source/drivers/firebird/ResultSet.cxx index e1007afb7a71..b09d6cce5080 100644 --- a/connectivity/source/drivers/firebird/ResultSet.cxx +++ b/connectivity/source/drivers/firebird/ResultSet.cxx @@ -481,6 +481,8 @@ ORowSetValue OResultSet::retrieveValue(const sal_Int32 nColumnIndex, const ISC_S if(nSqlSubType == 1 || nSqlSubType == 2) //numeric or decimal return getString(nColumnIndex); return getLong(nColumnIndex); + case SQL_BOOLEAN: + return getBoolean(nColumnIndex); case SQL_BLOB: case SQL_NULL: case SQL_QUAD: @@ -643,8 +645,7 @@ sal_Bool SAL_CALL OResultSet::wasNull() throw(SQLException, RuntimeException, st sal_Bool SAL_CALL OResultSet::getBoolean(sal_Int32 nColumnIndex) throw(SQLException, RuntimeException, std::exception) { - // Not a native firebird type hence we always have to convert. - return safelyRetrieveValue< ORowSetValue >(nColumnIndex); + return safelyRetrieveValue< sal_Bool >(nColumnIndex, SQL_BOOLEAN); } sal_Int8 SAL_CALL OResultSet::getByte(sal_Int32 nColumnIndex) |