]> git.ipfire.org Git - thirdparty/util-linux.git/commitdiff
wall: fix possible memory leak
authorKarel Zak <kzak@redhat.com>
Mon, 29 Apr 2024 13:25:58 +0000 (15:25 +0200)
committerKarel Zak <kzak@redhat.com>
Thu, 2 May 2024 08:56:26 +0000 (10:56 +0200)
Signed-off-by: Karel Zak <kzak@redhat.com>
term-utils/wall.c

index 588d3a96364a1a6fc534641908f2ca688f538120..4937bdc803d7577c88f2d8d4a2d27f61aaeeb28f 100644 (file)
@@ -324,10 +324,10 @@ static char *makemsg(char *fname, char **mvec, int mvecsz,
 
        if (print_banner == TRUE) {
                char *hostname = xgethostname();
-               char *whom, *where, date[CTIME_BUFSIZ];
+               char *whombuf, *whom, *where, date[CTIME_BUFSIZ];
                time_t now;
 
-               whom = xgetlogin();
+               whombuf = whom = xgetlogin();
                if (!whom) {
                        whom = "<someone>";
                        warn(_("cannot get passwd uid"));
@@ -358,6 +358,7 @@ static char *makemsg(char *fname, char **mvec, int mvecsz,
                                whom, hostname, where, date);
                fprintf(fs, "%-*.*s\007\007\r\n", TERM_WIDTH, TERM_WIDTH, lbuf);
                free(hostname);
+               free(whombuf);
        }
        fprintf(fs, "%*s\r\n", TERM_WIDTH, " ");