You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by ac...@apache.org on 2010/03/25 14:21:38 UTC

svn commit: r927384 - /qpid/trunk/qpid/cpp/src/qpid/client/SessionImpl.cpp

Author: aconway
Date: Thu Mar 25 13:21:37 2010
New Revision: 927384

URL: http://svn.apache.org/viewvc?rev=927384&view=rev
Log:
Fix "Session was not closed cleanly" warnings in a cluster broker giving an update.

Modified:
    qpid/trunk/qpid/cpp/src/qpid/client/SessionImpl.cpp

Modified: qpid/trunk/qpid/cpp/src/qpid/client/SessionImpl.cpp
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/cpp/src/qpid/client/SessionImpl.cpp?rev=927384&r1=927383&r2=927384&view=diff
==============================================================================
--- qpid/trunk/qpid/cpp/src/qpid/client/SessionImpl.cpp (original)
+++ qpid/trunk/qpid/cpp/src/qpid/client/SessionImpl.cpp Thu Mar 25 13:21:37 2010
@@ -73,12 +73,12 @@ SessionImpl::~SessionImpl() {
     {
         Lock l(state);
         if (state != DETACHED && state != DETACHING) {
-            QPID_LOG(warning, "Session was not closed cleanly: " << id);
-            try {
+            if (autoDetach) {
+                QPID_LOG(warning, "Session was not closed cleanly: " << id);
                 // Inform broker but don't wait for detached as that deadlocks.
                 // The detached will be ignored as the channel will be invalid.
-                if (autoDetach) detach();
-            } catch (...) {}    // ignore errors.
+                try { detach(); } catch (...) {}    // ignore errors.
+            }
             setState(DETACHED);
             handleClosed();
             state.waitWaiters();



---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:commits-subscribe@qpid.apache.org