From 802188d8d9a06a0c963ecee0b7d30b379dfe2814 Mon Sep 17 00:00:00 2001 From: yangxin <245051644@qq.com> Date: Thu, 8 Jun 2023 12:22:58 +0000 Subject: [PATCH] Modify the logic of rexec proxy process exit by mistake Signed-off-by: yangxin <245051644@qq.com> --- qtfs/rexec/rexec.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/qtfs/rexec/rexec.c b/qtfs/rexec/rexec.c index 489ebec..5439fac 100644 --- a/qtfs/rexec/rexec.c +++ b/qtfs/rexec/rexec.c @@ -109,7 +109,7 @@ static int rexec_io(struct rexec_client_event *evt) ret = write(evt->outfd, buf, len); if (ret <= 0) { rexec_err("Read from fd:%d len:%d write to fd:%d failed ret:%d", evt->fd, len, evt->outfd, ret); - return REXEC_EVENT_EXIT; + return REXEC_EVENT_DEL; } if (ret != len) { rexec_err("Read from fd:%d len:%d but write to fd:%d ret:%d", evt->fd, len, evt->outfd, ret); @@ -285,7 +285,7 @@ static int rexec_run(int efd, int connfd, char *argv[]) for (int i = 0; i < n; i++) { struct rexec_client_event *evt = (struct rexec_client_event *)evts[i].data.ptr; int ret = evt->handler(evt); - if (evts[i].events & EPOLLHUP || ret == REXEC_EVENT_EXIT) { + if (ret == REXEC_EVENT_EXIT) { process_exit = 1; } if (ret == REXEC_EVENT_DEL) { -- Gitee