From: Tobias Stoeckmann Date: Sat, 18 Apr 2026 08:24:04 +0000 (+0200) Subject: Fix error message handling in sample/test code X-Git-Url: http://git.ipfire.org/gitweb/?a=commitdiff_plain;h=91245e4b89a388c511d6f4b8410dcf0070ce9bd0;p=thirdparty%2Futil-linux.git Fix error message handling in sample/test code - Remove extra newline in errx messages - Use fprintf/exit for usage to avoid repeated program name - Improve signal safety by using appropriate functions This code is not installed, thus no functional change in final installation of util-linux. Signed-off-by: Tobias Stoeckmann --- diff --git a/libblkid/samples/partitions.c b/libblkid/samples/partitions.c index c5830e657..7830aa224 100644 --- a/libblkid/samples/partitions.c +++ b/libblkid/samples/partitions.c @@ -38,15 +38,15 @@ int main(int argc, char *argv[]) /* Binary interface */ ls = blkid_probe_get_partitions(pr); if (!ls) - errx(EXIT_FAILURE, "%s: failed to read partitions\n", devname); + errx(EXIT_FAILURE, "%s: failed to read partitions", devname); /* * Print info about the primary (root) partition table */ root_tab = blkid_partlist_get_table(ls); if (!root_tab) - errx(EXIT_FAILURE, "%s: does not contains any " - "known partition table\n", devname); + errx(EXIT_FAILURE, "%s: does not contain any " + "known partition table", devname); printf("size: %jd, sector size: %u, PT: %s, offset: %jd, id=%s\n---\n", (intmax_t)blkid_probe_get_size(pr), diff --git a/libmount/src/lock.c b/libmount/src/lock.c index d5c68b179..3880f47c0 100644 --- a/libmount/src/lock.c +++ b/libmount/src/lock.c @@ -332,7 +332,8 @@ static void clean_lock(void) static void __attribute__((__noreturn__)) sig_handler(int sig) { - errx(EXIT_FAILURE, "\n%d: catch signal: %s\n", getpid(), strsignal(sig)); + ul_sig_printf("\n%d: caught signal %d\n", getpid(), sig); + _exit(EXIT_FAILURE); } static int test_lock(struct libmnt_test *ts __attribute__((unused)), diff --git a/login-utils/sulogin-consoles.c b/login-utils/sulogin-consoles.c index 721650df9..c35922ff1 100644 --- a/login-utils/sulogin-consoles.c +++ b/login-utils/sulogin-consoles.c @@ -815,8 +815,10 @@ int main(int argc, char *argv[]) fd = STDIN_FILENO; } - if (!name) - errx(EXIT_FAILURE, "usage: %s []\n", program_invocation_short_name); + if (!name) { + fprintf(stderr, "usage: %s []\n", program_invocation_short_name); + return EXIT_FAILURE; + } INIT_LIST_HEAD(&consoles); re = detect_consoles(name, fd, &consoles);