diff options
-rw-r--r-- | cpp/src/qpid/client/TCPConnector.cpp | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/cpp/src/qpid/client/TCPConnector.cpp b/cpp/src/qpid/client/TCPConnector.cpp index 360d8c133c..00584d168e 100644 --- a/cpp/src/qpid/client/TCPConnector.cpp +++ b/cpp/src/qpid/client/TCPConnector.cpp @@ -200,6 +200,10 @@ void TCPConnector::handleClosed() { void TCPConnector::writebuff(AsynchIO& /*aio*/) { + // It's possible to be disconnected and be writable + if (closed) + return; + Codec* codec = securityLayer.get() ? (Codec*) securityLayer.get() : (Codec*) this; if (codec->canEncode()) { std::auto_ptr<AsynchIO::BufferBase> buffer = std::auto_ptr<AsynchIO::BufferBase>(aio->getQueuedBuffer()); |