commit 7e29da026b31f02c839b40c4dcf7bd87741a5e4a
Author: Josuah Demangeon <[email protected]>
AuthorDate: Tue May 8 15:13:56 2018 +0200
Commit: Aaron Marcher <[email protected]>
CommitDate: Tue May 8 15:18:32 2018 +0200
fflush(stdout) to print line by line if stdout is not a tty
To reproduce the issue:
$ slstatus -s | tee
then it would print only when the stdout buffer is full, by block
of multiple lines.
fflush() makes sure the line is printed at every loop iteration
diff --git a/slstatus.c b/slstatus.c
index c1cf8ac..5842b3e 100644
--- a/slstatus.c
+++ b/slstatus.c
@@ -98,6 +98,7 @@ main(int argc, char *argv[])
if (sflag) {
printf("%s\n", status);
+ fflush(stdout);
} else {
XStoreName(dpy, DefaultRootWindow(dpy), status);
XSync(dpy, False);