summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sfeed_curses.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/sfeed_curses.c b/sfeed_curses.c
index 78071b7..d22d16c 100644
--- a/sfeed_curses.c
+++ b/sfeed_curses.c
@@ -575,8 +575,14 @@ processexit(pid_t pid, int interactive)
/* ignore SIGINT (^C) in parent for interactive applications */
sa.sa_handler = SIG_IGN;
sigaction(SIGINT, &sa, NULL);
+
+ sa.sa_flags = 0; /* do not restart SIGTERM: this interrupts waitpid() */
+ sa.sa_handler = sighandler;
+ sigaction(SIGTERM, &sa, NULL);
+
/* wait for process to change state, ignore errors */
waitpid(pid, NULL, 0);
+
init();
updatesidebar();
updategeom();