slstatus

status monitor
git clone git://git.suckless.org/slstatus
Log | Files | Refs | README | LICENSE

commit 7fe240856eef7b56d8ca0b57fd5642dbdc5b89b1
parent 81d5b427cb10eae98fc958627336503390b9a1c1
Author: Quentin Rameau <quinq@fifth.space>
Date:   Tue, 29 May 2018 21:32:29 +0200

Flush the output stream instead of arbitrarily disabling buffering

This is (arguably) more elegant and it matches Xlib output logic.
Also use puts instead of printf as we don't do formating there.

Diffstat:
Mslstatus.c | 11++++-------
1 file changed, 4 insertions(+), 7 deletions(-)

diff --git a/slstatus.c b/slstatus.c @@ -73,10 +73,6 @@ main(int argc, char *argv[]) sigaction(SIGINT, &act, NULL); sigaction(SIGTERM, &act, NULL); - if (sflag) { - setbuf(stdout, NULL); - } - if (!sflag && !(dpy = XOpenDisplay(NULL))) { die("XOpenDisplay: Failed to open display"); } @@ -99,9 +95,10 @@ main(int argc, char *argv[]) } if (sflag) { - if (printf("%s\n", status) < 0) { - die("printf:"); - } + puts(status); + fflush(stdout); + if (ferror(stdout)) + die("puts:"); } else { if (XStoreName(dpy, DefaultRootWindow(dpy), status) < 0) { die("XStoreName: Allocation failed");