summaryrefslogtreecommitdiffstats
path: root/lib/libc
diff options
context:
space:
mode:
Diffstat (limited to 'lib/libc')
-rw-r--r--lib/libc/stdio/fgetwc.c4
-rw-r--r--lib/libc/stdio/fputwc.c4
-rw-r--r--lib/libc/stdio/ungetwc.c4
3 files changed, 3 insertions, 9 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)
diff --git a/lib/libc/stdio/fputwc.c b/lib/libc/stdio/fputwc.c
index ed1f11b..ba3c5bb 100644
--- a/lib/libc/stdio/fputwc.c
+++ b/lib/libc/stdio/fputwc.c
@@ -44,7 +44,6 @@ wint_t
__fputwc(wchar_t wc, FILE *fp)
{
char buf[MB_LEN_MAX];
- mbstate_t mbs;
size_t i, len;
if (MB_CUR_MAX == 1 && wc > 0 && wc <= UCHAR_MAX) {
@@ -56,8 +55,7 @@ __fputwc(wchar_t wc, FILE *fp)
*buf = (unsigned char)wc;
len = 1;
} else {
- memset(&mbs, 0, sizeof(mbs));
- if ((len = wcrtomb(buf, wc, &mbs)) == (size_t)-1) {
+ if ((len = wcrtomb(buf, wc, NULL)) == (size_t)-1) {
fp->_flags |= __SERR;
return (WEOF);
}
diff --git a/lib/libc/stdio/ungetwc.c b/lib/libc/stdio/ungetwc.c
index e20a763..c9d5c49 100644
--- a/lib/libc/stdio/ungetwc.c
+++ b/lib/libc/stdio/ungetwc.c
@@ -43,13 +43,11 @@ wint_t
__ungetwc(wint_t wc, FILE *fp)
{
char buf[MB_LEN_MAX];
- mbstate_t mbs;
size_t len;
if (wc == WEOF)
return (WEOF);
- memset(&mbs, 0, sizeof(mbs));
- if ((len = wcrtomb(buf, wc, &mbs)) == (size_t)-1) {
+ if ((len = wcrtomb(buf, wc, NULL)) == (size_t)-1) {
fp->_flags |= __SERR;
return (WEOF);
}
OpenPOWER on IntegriCloud