summaryrefslogtreecommitdiff
path: root/cpp/src/qpid/cluster
diff options
context:
space:
mode:
authorGordon Sim <gsim@apache.org>2010-06-01 18:59:52 +0000
committerGordon Sim <gsim@apache.org>2010-06-01 18:59:52 +0000
commitb11b4f24bdc5a02dcf522fc6ec9a86f7dbe6ed23 (patch)
tree4ed6e6387f82163cbc5710e7270c511c397038d7 /cpp/src/qpid/cluster
parenta942c5e9625068a7a1585ad1e4cc8138830a8500 (diff)
downloadqpid-python-b11b4f24bdc5a02dcf522fc6ec9a86f7dbe6ed23.tar.gz
QPID-2004: Send disconnected event to any handles still registered after shutdown to ensure they can clean themselves up
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@950205 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'cpp/src/qpid/cluster')
-rw-r--r--cpp/src/qpid/cluster/PollerDispatch.cpp6
1 files changed, 4 insertions, 2 deletions
diff --git a/cpp/src/qpid/cluster/PollerDispatch.cpp b/cpp/src/qpid/cluster/PollerDispatch.cpp
index a839ef863b..b8d94b95a5 100644
--- a/cpp/src/qpid/cluster/PollerDispatch.cpp
+++ b/cpp/src/qpid/cluster/PollerDispatch.cpp
@@ -60,8 +60,10 @@ void PollerDispatch::dispatch(sys::DispatchHandle& h) {
// Entry point: called if disconnected from CPG.
void PollerDispatch::disconnect(sys::DispatchHandle& ) {
- QPID_LOG(critical, "Disconnected from cluster");
- onError();
+ if (!poller->hasShutdown()) {
+ QPID_LOG(critical, "Disconnected from cluster");
+ onError();
+ }
}
}} // namespace qpid::cluster