[pacman-dev] [PATCH v2] pacman: Correct signal handler comment and refactor
Allan McRae
allan at archlinux.org
Mon Jun 23 03:39:59 EDT 2014
On 21/06/14 18:18, Silvan Jegen wrote:
> One of the comments for this function is out of sync with the code.
> Since the code exhibits the more sane behavior of treating SIGINT and
> SIGHUB the same way (by not exiting pacman when there is a commit in
> flight) we adjust the comment.
>
> Given this code flow, the if/else statements can be simplified somewhat
> as well.
>
> Signed-off-by: Silvan Jegen <s.jegen at gmail.com>
There is nothing I see correct about this patch.
> ---
> src/pacman/pacman.c | 6 +++---
> 1 file changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/src/pacman/pacman.c b/src/pacman/pacman.c
> index ef86d39..c0903ee 100644
> --- a/src/pacman/pacman.c
> +++ b/src/pacman/pacman.c
> @@ -301,7 +301,9 @@ static void handler(int signum)
> "Please submit a full bug report with --debug if appropriate.\n";
> xwrite(err, msg, strlen(msg));
> exit(signum);
> - } else if(signum == SIGINT || signum == SIGHUP) {
> + /* SIGINT/SIGHUP: no committing transaction, release it now and then exit pacman
This comment makes little sense here. It was better where it was. See
below.
> + * SIGTERM: release no matter what */
This should stay where it was. See below.
> + } else if(signum != SIGTERM) {
So SIGQUIT is handled like SIGINT and SIGHUP?
> if(signum == SIGINT) {
> msg = "\nInterrupt signal received\n";
> } else {
> @@ -313,8 +315,6 @@ static void handler(int signum)
> return;
> }
> }
> - /* SIGINT: no committing transaction, release it now and then exit pacman
> - * SIGHUP, SIGTERM: release no matter what */
Comments are correct. We get here with SIGINT or SIGHUP/SIGTERM only
when the transaction was not committing.
> alpm_trans_release(config->handle);
> /* output a newline to be sure we clear any line we may be on */
> xwrite(out, "\n", 1);
>
More information about the pacman-dev
mailing list