[hackers] [dwm][PATCH] Fix bug in die()

From: Raymond Cole <rc_AT_wolog.xyz>
Date: Sun, 27 Oct 2024 15:05:37 +0000

fputc() might set errno and thus affect perror().
---
 util.c | 10 ++++------
 1 file changed, 4 insertions(+), 6 deletions(-)
diff --git a/util.c b/util.c
index 96b82c9..a289160 100644
--- a/util.c
+++ b/util.c
_AT_@ -1,4 +1,5 @@
 /* See LICENSE file for copyright and license details. */
+#include <errno.h>
 #include <stdarg.h>
 #include <stdio.h>
 #include <stdlib.h>
_AT_@ -15,12 +16,9 @@ die(const char *fmt, ...)
 	vfprintf(stderr, fmt, ap);
 	va_end(ap);
 
-	if (fmt[0] && fmt[strlen(fmt)-1] == ':') {
-		fputc(' ', stderr);
-		perror(NULL);
-	} else {
-		fputc('\n', stderr);
-	}
+	if (fmt[0] && fmt[strlen(fmt)-1] == ':')
+		fprintf(stderr, " %s", strerror(errno));
+	fputc('\n', stderr);
 
 	exit(1);
 }
-- 
2.46.2
Received on Sun Oct 27 2024 - 16:05:37 CET

This archive was generated by hypermail 2.3.0 : Sun Oct 27 2024 - 16:24:38 CET