From 600e8dd3c860839339a0123a868f2940ebba1f15 Mon Sep 17 00:00:00 2001 From: Gao feng Date: Thu, 24 Sep 2015 10:55:57 +0800 Subject: [PATCH] release exec immediately if exec has no tty Only signal handler operates the exex struct, we can release exec immediately Signed-off-by: Gao feng --- src/exec.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/exec.c b/src/exec.c index a8170dc..990efbc 100644 --- a/src/exec.c +++ b/src/exec.c @@ -433,13 +433,14 @@ int hyper_release_exec(struct hyper_exec *exec, { int i; - if (!exec->exit) { + if (!exec->exit && exec->seq) { fprintf(stdout, "first user of exec exit\n"); exec->exit = 1; return 0; } - fprintf(stdout, "second user of exec exit, release\n"); + /* exec has no pty or the pty user already exited */ + fprintf(stdout, "last user of exec exit, release\n"); close(exec->e.fd); close(exec->ptyfd); hyper_reset_event(&exec->e);