summaryrefslogtreecommitdiffstats
path: root/lib/libc/stdio/fgetwc.c
diff options
context:
space:
mode:
authortjr <tjr@FreeBSD.org>2003-11-04 11:05:55 +0000
committertjr <tjr@FreeBSD.org>2003-11-04 11:05:55 +0000
commit46a574efa9d64e0719dd8846de8e06a157dbd4ff (patch)
treede1efe529ace379f46b768f97f638aa004be19ea /lib/libc/stdio/fgetwc.c
parenta69e97d1cc1b9b78983d8e402ba00aa348d02701 (diff)
downloadFreeBSD-src-46a574efa9d64e0719dd8846de8e06a157dbd4ff.zip
FreeBSD-src-46a574efa9d64e0719dd8846de8e06a157dbd4ff.tar.gz
Pass mbrtowc() and wcrtomb() NULL instead of a pointer to a freshly zeroed
mbstate_t object that they ignore. The zeroing is fairly expensive, and it will never be necessary in these functions; when we support state-dependent encodings, we will pass in a pointer to the file's mbstate_t object, and only zero it at the time the file gets opened.
Diffstat (limited to 'lib/libc/stdio/fgetwc.c')
-rw-r--r--lib/libc/stdio/fgetwc.c4
1 files changed, 1 insertions, 3 deletions
diff --git a/lib/libc/stdio/fgetwc.c b/lib/libc/stdio/fgetwc.c
index 93438a6..3a6e6e1 100644
--- a/lib/libc/stdio/fgetwc.c
+++ b/lib/libc/stdio/fgetwc.c
@@ -78,7 +78,6 @@ static __inline wint_t
__fgetwc_nbf(FILE *fp)
{
char buf[MB_LEN_MAX];
- mbstate_t mbs;
size_t n, nconv;
int c;
wchar_t wc;
@@ -91,8 +90,7 @@ __fgetwc_nbf(FILE *fp)
break;
}
buf[n++] = (char)c;
- memset(&mbs, 0, sizeof(mbs));
- nconv = mbrtowc(&wc, buf, n, &mbs);
+ nconv = mbrtowc(&wc, buf, n, NULL);
if (nconv == n)
return (wc);
else if (nconv == 0)
OpenPOWER on IntegriCloud