tCall _exit() instead of exit() if exec*() fails - st - [fork] customized build of st, the simple terminal
(HTM) git clone git://src.adamsgaard.dk/st
(DIR) Log
(DIR) Files
(DIR) Refs
(DIR) README
(DIR) LICENSE
---
(DIR) commit 4418939dd9f3a7b3cfd3071234ed18ae86538f2a
(DIR) parent bafbba56cd5735c680676db2adf6f614ba61356f
(HTM) Author: sin <sin@2f30.org>
Date: Tue, 11 Nov 2014 18:29:11 +0000
Call _exit() instead of exit() if exec*() fails
exit() will also unwind the atexit() functions. This is bad
because if exec*() fails the process is in an inconsistent state.
Diffstat:
M st.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
---
(DIR) diff --git a/st.c b/st.c
t@@ -1190,7 +1190,7 @@ execsh(void) {
signal(SIGALRM, SIG_DFL);
execvp(prog, args);
- exit(EXIT_FAILURE);
+ _exit(EXIT_FAILURE);
}
void