Ali H. Fardan 9 жил өмнө
parent
commit
a4beda8eb9
1 өөрчлөгдсөн 16 нэмэгдсэн , 14 устгасан
  1. 16 14
      slstatus.c

+ 16 - 14
slstatus.c

@@ -604,21 +604,23 @@ main(void)
 	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);