diff options
| author | Gordon Sim <gsim@apache.org> | 2013-08-15 07:57:09 +0000 |
|---|---|---|
| committer | Gordon Sim <gsim@apache.org> | 2013-08-15 07:57:09 +0000 |
| commit | f203ee690d73b8f6ff19ba8b4f3f39808a1eddde (patch) | |
| tree | c3d89e9205e5b63bd8cc768d2f2fb0abb2f7a09c /qpid/cpp/src | |
| parent | dbf150adac37ff3a11ad1dfc5ec8b12feb99213c (diff) | |
| download | qpid-python-f203ee690d73b8f6ff19ba8b4f3f39808a1eddde.tar.gz | |
QPID-5072: ensure session manager is informed when sessions end due to connection exception
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1514192 13f79535-47bb-0310-9956-ffa450edef68
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) |
