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