Date: Sun, 15 Feb 2015 16:50:21 +0000 (UTC) From: "Pedro F. Giffuni" <pfg@FreeBSD.org> To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r278804 - head/lib/libc/gen Message-ID: <201502151650.t1FGoLTi032120@svn.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: pfg Date: Sun Feb 15 16:50:21 2015 New Revision: 278804 URL: https://svnweb.freebsd.org/changeset/base/278804 Log: More tidy-ups on uninitialized scalar variable As a followup to r278363, there is one more case where stayopen can be accessed uninitialized, but even after swapping arguments, access is possible in some other cases so prevent it completely by initializing stayopen. CID: 1018729 CID: 1018732 Modified: head/lib/libc/gen/getgrent.c head/lib/libc/gen/getpwent.c Modified: head/lib/libc/gen/getgrent.c ============================================================================== --- head/lib/libc/gen/getgrent.c Sun Feb 15 14:31:50 2015 (r278803) +++ head/lib/libc/gen/getgrent.c Sun Feb 15 16:50:21 2015 (r278804) @@ -1303,7 +1303,7 @@ compat_group(void *retval, void *mdata, void *discard; size_t bufsize, linesize; off_t pos; - int rv, stayopen, *errnop; + int rv, stayopen = 0, *errnop; #define set_lookup_type(x, y) do { \ int i; \ @@ -1450,7 +1450,7 @@ docompat: pos = ftello(st->fp); } fin: - if (!stayopen && st->fp != NULL) { + if (st->fp != NULL || !stayopen) { fclose(st->fp); st->fp = NULL; } Modified: head/lib/libc/gen/getpwent.c ============================================================================== --- head/lib/libc/gen/getpwent.c Sun Feb 15 14:31:50 2015 (r278803) +++ head/lib/libc/gen/getpwent.c Sun Feb 15 16:50:21 2015 (r278804) @@ -815,7 +815,7 @@ files_passwd(void *retval, void *mdata, size_t bufsize, namesize; uid_t uid; uint32_t store; - int rv, stayopen, *errnop; + int rv, stayopen = 0, *errnop; name = NULL; uid = (uid_t)-1;
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201502151650.t1FGoLTi032120>