From cefa0923504b3eb6c786142e030c61bcb7a35fcd Mon Sep 17 00:00:00 2001 From: mdblack98 Date: Tue, 21 Apr 2020 11:31:22 -0500 Subject: [PATCH] Change rigctld main loop to continue on EOF --- tests/rigctld.c | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/tests/rigctld.c b/tests/rigctld.c index 87f3ce111..e195b6793 100644 --- a/tests/rigctld.c +++ b/tests/rigctld.c @@ -1024,20 +1024,24 @@ void *handle_socket(void *arg) 1, 0, handle_data_arg->vfo_mode, send_cmd_term, &ext_resp, &resp_sep); if (retcode != 0) rig_debug(RIG_DEBUG_ERR, "%s: rigctl_parse retcode=%d\n", __func__, retcode); + if (retcode == -1) { + continue; + sleep(1); + } if (ferror(fsockin) || ferror(fsockout)) { - rig_debug(RIG_DEBUG_ERR,"%s: %d, %d\n", __func__, ferror(fsockin), ferror(fsockout)); + rig_debug(RIG_DEBUG_ERR,"%s: socket error in=%d, out=%d\n", __func__, ferror(fsockin), ferror(fsockout)); retcode = 1; - } - if (retcode == 1 || retcode == -1) + if (retcode == 1) { retcode = rig_close(my_rig); rig_debug(RIG_DEBUG_ERR,"%s: rig_close retcode=%d\n", __func__, retcode); retcode = rig_open(my_rig); rig_debug(RIG_DEBUG_ERR,"%s: rig_open retcode=%d\n", __func__, retcode); } + } } while (retcode == 0 || retcode == 2 || retcode == -RIG_ENAVAIL);