[pacman-dev] [PATCHv2] alpm: log errors for scriptlets terminated by a signal

Dave Reisner dreisner at archlinux.org
Tue Aug 20 22:00:10 EDT 2013


Fixes FS#36618.

Signed-off-by: Dave Reisner <dreisner at archlinux.org>
---
v2: Use strsignal to explain the signal in addition to reporting the value.

 lib/libalpm/util.c | 9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/lib/libalpm/util.c b/lib/libalpm/util.c
index f1f760a..19a8612 100644
--- a/lib/libalpm/util.c
+++ b/lib/libalpm/util.c
@@ -599,6 +599,15 @@ int _alpm_run_chroot(alpm_handle_t *handle, const char *cmd, char *const argv[])
 				_alpm_log(handle, ALPM_LOG_ERROR, _("command failed to execute correctly\n"));
 				retval = 1;
 			}
+		} else if(WIFSIGNALED(status) != 0) {
+			char *signal_description = strsignal(WTERMSIG(status));
+			/* strsignal can return NULL on some (non-Linux) platforms */
+			if(signal_description == NULL) {
+				signal_description = _("Unknown signal");
+			}
+			_alpm_log(handle, ALPM_LOG_ERROR, _("command terminated by signal %d: %s\n"),
+						WTERMSIG(status), signal_description);
+			retval = 1;
 		}
 	}
 
-- 
1.8.3.4



More information about the pacman-dev mailing list