svn commit: r278804 - head/lib/libc/gen
Pedro F. Giffuni
pfg at FreeBSD.org
Sun Feb 15 16:50:22 UTC 2015
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;
More information about the svn-src-all
mailing list