all repos — slstatus @ a4beda8eb9bdf34d055ba52c39b15b9580b27e6a

my build of slstatus (tools.suckless.org/slstatus/)

bringed back the loop
Ali H. Fardan raiz@firemail.cc
Mon, 05 Sep 2016 01:21:03 +0300
commit

a4beda8eb9bdf34d055ba52c39b15b9580b27e6a

parent

52d19f955e67712eab50f582046013246b6bc75d

1 files changed, 16 insertions(+), 14 deletions(-)

jump to
M slstatus.cslstatus.c

@@ -604,21 +604,23 @@

stderr = stderr; dpy = XOpenDisplay(NULL); - memset(status_string, 0, sizeof(status_string)); - for (i = 0; i < sizeof(args) / sizeof(args[0]); ++i) { - argument = args[i]; - if (argument.args == NULL) - res = argument.func(); - else - res = argument.func(argument.args); - element = smprintf(argument.format, res); - if (element == NULL) { - element = smprintf(UNKNOWN_STR); - fprintf(stderr, "Failed to format output.\n"); + for (;;) { + memset(status_string, 0, sizeof(status_string)); + for (i = 0; i < sizeof(args) / sizeof(args[0]); ++i) { + argument = args[i]; + if (argument.args == NULL) + res = argument.func(); + else + res = argument.func(argument.args); + element = smprintf(argument.format, res); + if (element == NULL) { + element = smprintf(UNKNOWN_STR); + fprintf(stderr, "Failed to format output.\n"); + } + strlcat(status_string, element, sizeof(status_string)); + free(res); + free(element); } - strlcat(status_string, element, sizeof(status_string)); - free(res); - free(element); } XStoreName(dpy, DefaultRootWindow(dpy), status_string);