Re: [PATCH 5/8] sigchain: add command to pop all common signals
- From
Junio C Hamano <gitster@pobox.com>
- Date
- Sep 30, 2015, 05:23 UTC
- Message-ID
- <xmqq37xwa3au.fsf@gitster.mtv.corp.google.com>
- In-Reply-To
- <1443482046-25569-6-git-send-email-sbeller@google.com>
Stefan Beller <sbeller@google.com> writes:
Show 9 quoted lines
> The new method removes all common signal handlers that were installed > by sigchain_push. > > CC: Jeff King <peff@peff.net> > Signed-off-by: Stefan Beller <sbeller@google.com> > --- > sigchain.c | 9 +++++++++ > sigchain.h | 1 + > 2 files changed, 10 insertions(+)
Sounds like a good idea, as you need to clean them all up if you did push_common() and ended up not receiving any signal.
This is merely pure aesthetics, but I somehow thought that ordering them in the reverse as listed in push_common() might make more sense, though.
Thanks.
Show 29 quoted lines
>
> 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 */