daemons/cmirrord/cluster.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/daemons/cmirrord/cluster.c b/daemons/cmirrord/cluster.c
index 67391f1..3fd5d23 100644
--- a/daemons/cmirrord/cluster.c
+++ b/daemons/cmirrord/cluster.c
@@ -985,9 +985,9 @@ static int do_cluster_work(void *data __attribute__((unused)))
dm_list_iterate_items_safe(entry, tmp, &clog_cpg_list) {
r = cpg_dispatch(entry->handle, CS_DISPATCH_ALL);
if (r != CS_OK) {
- if ((entry->cpg_state == INVALID) &&
- (entry->state == LEAVING) &&
- (r == CS_ERR_BAD_HANDLE))
+ if ((r == CS_ERR_BAD_HANDLE) &&
+ ((entry->state == INVALID) ||
+ (entry->state == LEAVING)))
/* It's ok if we've left the cluster */
r = CS_OK;
else