From 747c814453bd673a13fdeac23e3c081cc81b8460 Mon Sep 17 00:00:00 2001 From: Michael Stapelberg Date: Tue, 16 Jun 2009 18:43:13 +0200 Subject: [PATCH] Bugfix: Exit upon errors from printf in dzen2-mode (usually SIGPIPE because dzen2 exited) MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit This prevents i3status processes from still running on your system after you’ve restarted X and dzen2 is long gone. --- i3status.c | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/i3status.c b/i3status.c index ad4384f..fd781cb 100644 --- a/i3status.c +++ b/i3status.c @@ -221,11 +221,18 @@ static void setup(void) { static void write_to_statusbar(const char *name, const char *message, bool final_entry) { #ifdef DZEN if (final_entry) { - (void)printf("%s^p(6)\n", message); + if (printf("%s^p(6)\n", message) < 0) { + perror("printf"); + exit(1); + } + fflush(stdout); return; } - (void)printf("%s" BAR, message); + if (printf("%s" BAR, message) < 0) { + perror("printf"); + exit(1); + } return; #endif -- 2.39.5