summaryrefslogtreecommitdiff
path: root/slstatus.c
diff options
context:
space:
mode:
authorQuentin Rameau <quinq@fifth.space>2018-05-29 21:32:29 +0200
committerAaron Marcher <me@drkhsh.at>2018-05-29 22:26:05 +0200
commit7fe240856eef7b56d8ca0b57fd5642dbdc5b89b1 (patch)
tree67376b9918df5aac6c6977c632cc60cc6c138cc8 /slstatus.c
parent81d5b427cb10eae98fc958627336503390b9a1c1 (diff)
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 (limited to 'slstatus.c')
-rw-r--r--slstatus.c11
1 files changed, 4 insertions, 7 deletions
diff --git a/slstatus.c b/slstatus.c
index 7776fd5..e6aa90b 100644
--- 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");