diff --git a/pglablib/ASyncDBConnection.cpp b/pglablib/ASyncDBConnection.cpp index a8ae04e..3b93ce8 100644 --- a/pglablib/ASyncDBConnection.cpp +++ b/pglablib/ASyncDBConnection.cpp @@ -40,6 +40,7 @@ void ASyncDBConnection::setupConnection(const ConnectionConfig &config) // auto start = std::chrono::steady_clock::now(); if (ok && m_connection.status() != CONNECTION_BAD) { auto sock_handle = m_connection.socket(); + m_asioSock.assign(ip::tcp::v4(), sock_handle); m_asioSock.non_blocking(true); @@ -99,7 +100,9 @@ void ASyncDBConnection::closeConnection() m_canceller.cancel(nullptr); } if (m_state != State::NotConnected) { - m_asioSock.close(); + // Do not really want to close it before libpq is finished with it + // However explicitly is the destroctor doing the right thing? + //m_asioSock.close(); m_connection.close(); } doStateCallback(State::NotConnected);