exit(3) is not async-signal-safe but, _exit(2) is. This change prevents st to crash and dump core. --- st.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/st.c b/st.c
index 0ce6ac2..2bf133f 100644
--- a/st.c
+++ b/st.c
@@ -730,7 +730,7 @@ sigchld(int a)
die("child exited with status %d\n", WEXITSTATUS(stat));
else if (WIFSIGNALED(stat))
die("child terminated due to signal %d\n", WTERMSIG(stat));
- exit(0);
+ _exit(0);
}
void
--
2.24.1
