Xinqi Bao's Git

Refactor snprintf-usage in util.c
[slstatus.git] / slstatus.c
index 0c4605f..4f7a2fc 100644 (file)
@@ -91,19 +91,17 @@ main(int argc, char *argv[])
                        if (!(res = args[i].func(args[i].args))) {
                                res = unknown_str;
                        }
-                       if ((ret = snprintf(status + len, sizeof(status) - len,
+                       if ((ret = esnprintf(status + len, sizeof(status) - len,
                                            args[i].fmt, res)) < 0) {
-                               warn("snprintf:");
-                               break;
-                       } else if ((size_t)ret >= sizeof(status) - len) {
-                               warn("snprintf: Output truncated");
                                break;
                        }
                        len += ret;
                }
 
                if (sflag) {
-                       printf("%s\n", status);
+                       if (printf("%s\n", status) < 0) {
+                               die("printf:");
+                       }
                } else {
                        if (XStoreName(dpy, DefaultRootWindow(dpy), status) < 0) {
                                die("XStoreName: Allocation failed");