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.
Quentin Rameau quinq@fifth.space
Tue, 29 May 2018 21:32:29 +0200
1 files changed,
4 insertions(+),
7 deletions(-)
jump to
M
slstatus.c
→
slstatus.c
@@ -73,10 +73,6 @@ act.sa_handler = terminate;
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 @@ len += ret;
} 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");