From: Tobias Stoeckmann Date: Tue, 4 Apr 2017 19:27:31 +0000 (+0200) Subject: On success, fgets always terminates the result. X-Git-Url: https://git.xinqibao.xyz/slstatus.git/commitdiff_plain/35295f190207d9001fdcf30fe76f11434691b259?ds=inline;hp=-c On success, fgets always terminates the result. If fgets succeeds, then the resulting char array is always terminated by a '\0'. No need to keep extra space, therefore sizeof(buf) is the correct argument. Signed-off-by: Tobias Stoeckmann --- 35295f190207d9001fdcf30fe76f11434691b259 diff --git a/slstatus.c b/slstatus.c index 6deb68c..ada6441 100644 --- a/slstatus.c +++ b/slstatus.c @@ -447,7 +447,7 @@ run_command(const char *cmd) warn("Failed to get command output for %s", cmd); return smprintf("%s", UNKNOWN_STR); } - fgets(buf, sizeof(buf) - 1, fp); + fgets(buf, sizeof(buf), fp); pclose(fp); buf[sizeof(buf) - 1] = '\0';