diff options
author | tjr <tjr@FreeBSD.org> | 2003-11-05 08:20:45 +0000 |
---|---|---|
committer | tjr <tjr@FreeBSD.org> | 2003-11-05 08:20:45 +0000 |
commit | 736d21ee30829ad50145dc4f69a99891c824c68f (patch) | |
tree | c35ab994daf990dee6de564c4d51c99e38cf895a /lib/libc/stdio/vfwscanf.c | |
parent | 34fe8a239a2d7322d283dd54a19e4319cd74244f (diff) | |
download | FreeBSD-src-736d21ee30829ad50145dc4f69a99891c824c68f.zip FreeBSD-src-736d21ee30829ad50145dc4f69a99891c824c68f.tar.gz |
Pass NULL instead of a pointer to a zeroed mbstate_t object.
Diffstat (limited to 'lib/libc/stdio/vfwscanf.c')
-rw-r--r-- | lib/libc/stdio/vfwscanf.c | 16 |
1 files changed, 6 insertions, 10 deletions
diff --git a/lib/libc/stdio/vfwscanf.c b/lib/libc/stdio/vfwscanf.c index 990555c..4d02810 100644 --- a/lib/libc/stdio/vfwscanf.c +++ b/lib/libc/stdio/vfwscanf.c @@ -146,7 +146,6 @@ __vfwscanf(FILE * __restrict fp, const wchar_t * __restrict fmt, va_list ap) wint_t wi; /* handy wint_t */ char *mbp; /* multibyte string pointer for %c %s %[ */ size_t nconv; /* number of bytes in mb. conversion */ - mbstate_t mbs; /* multibyte state */ char mbbuf[MB_LEN_MAX]; /* temporary mb. character buffer */ /* `basefix' is used to avoid `if' tests in the integer scanner */ @@ -379,17 +378,16 @@ literal: if (!(flags & SUPPRESS)) mbp = va_arg(ap, char *); n = 0; - memset(&mbs, 0, sizeof(mbs)); while (width != 0 && (wi = __fgetwc(fp)) != WEOF) { if (width >= MB_CUR_MAX && !(flags & SUPPRESS)) { - nconv = wcrtomb(mbp, wi, &mbs); + nconv = wcrtomb(mbp, wi, NULL); if (nconv == (size_t)-1) goto input_failure; } else { nconv = wcrtomb(mbbuf, wi, - &mbs); + NULL); if (nconv == (size_t)-1) goto input_failure; if (nconv > width) { @@ -444,17 +442,16 @@ literal: if (!(flags & SUPPRESS)) mbp = va_arg(ap, char *); n = 0; - memset(&mbs, 0, sizeof(mbs)); while ((wi = __fgetwc(fp)) != WEOF && width != 0 && INCCL(wi)) { if (width >= MB_CUR_MAX && !(flags & SUPPRESS)) { - nconv = wcrtomb(mbp, wi, &mbs); + nconv = wcrtomb(mbp, wi, NULL); if (nconv == (size_t)-1) goto input_failure; } else { nconv = wcrtomb(mbbuf, wi, - &mbs); + NULL); if (nconv == (size_t)-1) goto input_failure; if (nconv > width) @@ -505,18 +502,17 @@ literal: } else { if (!(flags & SUPPRESS)) mbp = va_arg(ap, char *); - memset(&mbs, 0, sizeof(mbs)); while ((wi = __fgetwc(fp)) != WEOF && width != 0 && !iswspace(wi)) { if (width >= MB_CUR_MAX && !(flags & SUPPRESS)) { - nconv = wcrtomb(mbp, wi, &mbs); + nconv = wcrtomb(mbp, wi, NULL); if (nconv == (size_t)-1) goto input_failure; } else { nconv = wcrtomb(mbbuf, wi, - &mbs); + NULL); if (nconv == (size_t)-1) goto input_failure; if (nconv > width) |