diff options
-rw-r--r-- | connectivity/source/drivers/firebird/Connection.cxx | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/connectivity/source/drivers/firebird/Connection.cxx b/connectivity/source/drivers/firebird/Connection.cxx index 4f825709604c..979c677cf946 100644 --- a/connectivity/source/drivers/firebird/Connection.cxx +++ b/connectivity/source/drivers/firebird/Connection.cxx @@ -773,9 +773,12 @@ void Connection::disposing() isc_rollback_transaction(status, &m_aTransactionHandle); } - if (isc_detach_database(status, &m_aDBHandle)) + if (m_aDBHandle != 0) { - evaluateStatusVector(status, "isc_detach_database", *this); + if (isc_detach_database(status, &m_aDBHandle)) + { + evaluateStatusVector(status, "isc_detach_database", *this); + } } // TODO: write to storage again? |