The new method removes all common signal handlers that were installed
by sigchain_push.
CC: Jeff King <redacted>
Signed-off-by: Stefan Beller <redacted>
---
sigchain.c | 9 +++++++++
sigchain.h | 1 +
2 files changed, 10 insertions(+)
diff --git a/sigchain.c b/sigchain.c
index faa375d..9262307 100644
--- a/sigchain.c
+++ b/sigchain.c
@@ -50,3 +50,12 @@ void sigchain_push_common(sigchain_fun f)
sigchain_push(SIGQUIT, f);
sigchain_push(SIGPIPE, f);
}
+
+void sigchain_pop_common(void)
+{
+ sigchain_pop(SIGINT);
+ sigchain_pop(SIGHUP);
+ sigchain_pop(SIGTERM);
+ sigchain_pop(SIGQUIT);
+ sigchain_pop(SIGPIPE);
+}diff --git a/sigchain.h b/sigchain.h
index 618083b..138b20f 100644
--- a/sigchain.h
+++ b/sigchain.h
@@ -7,5 +7,6 @@ int sigchain_push(int sig, sigchain_fun f);
int sigchain_pop(int sig);
void sigchain_push_common(sigchain_fun f);
+void sigchain_pop_common(void);
#endif /* SIGCHAIN_H */
--
2.5.0.273.g6fa2560.dirty