diff options
Diffstat (limited to 'qpid/cpp/src')
| -rw-r--r-- | qpid/cpp/src/qpid/broker/SessionHandler.cpp | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/qpid/cpp/src/qpid/broker/SessionHandler.cpp b/qpid/cpp/src/qpid/broker/SessionHandler.cpp index 93977c8a6e..ff7693e93a 100644 --- a/qpid/cpp/src/qpid/broker/SessionHandler.cpp +++ b/qpid/cpp/src/qpid/broker/SessionHandler.cpp @@ -39,7 +39,11 @@ SessionHandler::SessionHandler(amqp_0_10::Connection& c, ChannelId ch) proxy(out) {} -SessionHandler::~SessionHandler() {} +SessionHandler::~SessionHandler() +{ + if (session.get()) + connection.getBroker().getSessionManager().forget(session->getId()); +} void SessionHandler::connectionException( framing::connection::CloseCode code, const std::string& msg) |
