summaryrefslogtreecommitdiffstats
path: root/newlib/libc/stdlib/mbtowc_r.c
diff options
context:
space:
mode:
authorCorinna Vinschen <corinna@vinschen.de>2009-10-03 08:51:07 +0000
committerCorinna Vinschen <corinna@vinschen.de>2009-10-03 08:51:07 +0000
commit6ff28fc3b12140dfa8539e0cb236a15b3eac089e (patch)
treed9d494d84dabeff6b8d93a21bd5dbcd5192345e8 /newlib/libc/stdlib/mbtowc_r.c
parent9c47bbb6e9bd8d95775a7887209d71f84d7e850c (diff)
downloadcygnal-6ff28fc3b12140dfa8539e0cb236a15b3eac089e.tar.gz
cygnal-6ff28fc3b12140dfa8539e0cb236a15b3eac089e.tar.bz2
cygnal-6ff28fc3b12140dfa8539e0cb236a15b3eac089e.zip
* libc/stdlib/mbtowc_r.c (__utf8_mbtowc): Allow CESU-8 surrogate
value encoding. * libc/stdlib/wctomb_r.c (__utf8_mbtowc): Allow CESU-8 surrogate value decoding.
Diffstat (limited to 'newlib/libc/stdlib/mbtowc_r.c')
-rw-r--r--newlib/libc/stdlib/mbtowc_r.c6
1 files changed, 0 insertions, 6 deletions
diff --git a/newlib/libc/stdlib/mbtowc_r.c b/newlib/libc/stdlib/mbtowc_r.c
index a791692be..0fa57fafd 100644
--- a/newlib/libc/stdlib/mbtowc_r.c
+++ b/newlib/libc/stdlib/mbtowc_r.c
@@ -295,12 +295,6 @@ _DEFUN (__utf8_mbtowc, (r, pwc, s, n, charset, state),
tmp = (wchar_t)((state->__value.__wchb[0] & 0x0f) << 12)
| (wchar_t)((state->__value.__wchb[1] & 0x3f) << 6)
| (wchar_t)(ch & 0x3f);
- /* Check for invalid CESU-8 encoding of UTF-16 surrogate values. */
- if (tmp >= 0xd800 && tmp <= 0xdfff)
- {
- r->_errno = EILSEQ;
- return -1;
- }
*pwc = tmp;
return i;
}