From a2651142cbfdb16a246f5ca2ec8a7af8a0a49ebd Mon Sep 17 00:00:00 2001 From: Klaus Wenninger Date: Apr 07 2021 22:24:59 +0000 Subject: Fix: ipc-api: avoid infinite loop when disconnected Happens when using pcmk_dispatch_ipc when dispatching without mainloop. --- diff --git a/lib/common/ipc_client.c b/lib/common/ipc_client.c index df687da..aa032fe 100644 --- a/lib/common/ipc_client.c +++ b/lib/common/ipc_client.c @@ -392,7 +392,7 @@ pcmk_dispatch_ipc(pcmk_ipc_api_t *api) if (api == NULL) { return; } - while (crm_ipc_ready(api->ipc)) { + while (crm_ipc_ready(api->ipc) > 0) { if (crm_ipc_read(api->ipc) > 0) { dispatch_ipc_data(crm_ipc_buffer(api->ipc), 0, api); }