git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Chris Packham <judge.packham@gmail.com>
To: Jeremiah Mahler <jmmahler@gmail.com>, git@vger.kernel.org
Subject: Re: [PATCH 1/5] progress.c: replace signal() with sigaction()
Date: Wed, 28 May 2014 20:07:38 +1200	[thread overview]
Message-ID: <5385994A.5040507@gmail.com> (raw)
In-Reply-To: <1401257655-6043-2-git-send-email-jmmahler@gmail.com>

On 28/05/14 18:14, Jeremiah Mahler wrote:
> From signal(2)
> 
>   The behavior of signal() varies across UNIX versions, and has also var‐
>   ied historically across different versions of Linux.   Avoid  its  use:
>   use sigaction(2) instead.  See Portability below.

Minor nit. The last sentence applies to the man page you're quoting and
doesn't really make sense when viewed in the context of this commit
message. Same applies to other patches in this series.

> 
> Replaced signal() with sigaction() in progress.c
> 
> Signed-off-by: Jeremiah Mahler <jmmahler@gmail.com>
> ---
>  progress.c | 6 +++++-
>  1 file changed, 5 insertions(+), 1 deletion(-)
> 
> diff --git a/progress.c b/progress.c
> index 261314e..24df263 100644
> --- a/progress.c
> +++ b/progress.c
> @@ -66,8 +66,12 @@ static void set_progress_signal(void)
>  static void clear_progress_signal(void)
>  {
>  	struct itimerval v = {{0,},};
> +	struct sigaction sa;
> +
> +	memset(&sa, 0, sizeof(sa));
> +	sa.sa_handler = SIG_IGN;

A C99 initialiser here would save the call to memset. Unfortunately
Documentation/CodingGuidelines is fairly clear on not using C99
initialisers, given the fact we're now at git 2.0 maybe it's time to
revisit this policy?

>  	setitimer(ITIMER_REAL, &v, NULL);
> -	signal(SIGALRM, SIG_IGN);
> +	sigaction(SIGALRM, &sa, 0);
>  	progress_update = 0;
>  }
>  
> 

  reply	other threads:[~2014-05-28  8:07 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-05-28  6:14 [PATCH 0/5] replace signal() with sigaction() Jeremiah Mahler
2014-05-28  6:14 ` [PATCH 1/5] progress.c: " Jeremiah Mahler
2014-05-28  8:07   ` Chris Packham [this message]
2014-05-28  8:19     ` David Kastrup
2014-05-28  8:48       ` Erik Faye-Lund
2014-05-28  9:11         ` David Kastrup
2014-05-28 17:35       ` Junio C Hamano
2014-05-28 15:45     ` Jeremiah Mahler
2014-05-28  6:14 ` [PATCH 2/5] daemon.c run_service(): " Jeremiah Mahler
2014-05-28  6:14 ` [PATCH 3/5] daemon.c child_handler(): " Jeremiah Mahler
2014-05-28  6:14 ` [PATCH 4/5] daemon.c service_loop(): " Jeremiah Mahler
2014-05-28  6:14 ` [PATCH 5/5] connect.c: " Jeremiah Mahler
2014-05-28  7:40 ` [PATCH 0/5] " Johannes Sixt
2014-05-28  8:11   ` Chris Packham
2014-05-28  8:23     ` Erik Faye-Lund
2014-05-28 16:11   ` Jeremiah Mahler

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=5385994A.5040507@gmail.com \
    --to=judge.packham@gmail.com \
    --cc=git@vger.kernel.org \
    --cc=jmmahler@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).