[pacman-dev] [PATCH v2] pacman: Correct signal handler comment and refactor

Silvan Jegen s.jegen at gmail.com
Sat Jun 21 04:18:57 EDT 2014


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>
---
 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
+	 * SIGTERM: release no matter what */
+	} else if(signum != SIGTERM) {
 		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 */
 	alpm_trans_release(config->handle);
 	/* output a newline to be sure we clear any line we may be on */
 	xwrite(out, "\n", 1);
-- 
2.0.0



More information about the pacman-dev mailing list