* libc/stdio/vfprintf.c (_VFPRINTF_R): Just wave bytes invalid in
the current charset through.
This commit is contained in:
parent
811de4bff3
commit
0b82c17d57
|
@ -1,3 +1,18 @@
|
||||||
|
2010-01-14 Corinna Vinschen <corinna@vinschen.de>
|
||||||
|
|
||||||
|
* libc/stdio/vfprintf.c (_VFPRINTF_R): Just wave bytes invalid in
|
||||||
|
the current charset through.
|
||||||
|
|
||||||
|
2010-01-13 Corinna Vinschen <corinna@vinschen.de>
|
||||||
|
|
||||||
|
* libc/locale/locale.c (lc_ctype_charset): Disable defaulting to
|
||||||
|
"UTF-8" on Cygwin.
|
||||||
|
(lc_message_charset): Ditto.
|
||||||
|
(loadlocale): Disable setting charset of the "C" locale to "UTF-8" on
|
||||||
|
Cygwin.
|
||||||
|
* libc/stdlib/mbtowc_r.c (__mbtowc): Add Cygwin-specific comment.
|
||||||
|
* libc/stdlib/wctomb_r.c (__wctomb): Ditto.
|
||||||
|
|
||||||
2010-01-11 Sebastian Huber <sebastian.huber@embedded-brains.de>
|
2010-01-11 Sebastian Huber <sebastian.huber@embedded-brains.de>
|
||||||
|
|
||||||
* libc/posix/telldir.c (_cleanupdir): Fixed usage of freed memory.
|
* libc/posix/telldir.c (_cleanupdir): Fixed usage of freed memory.
|
||||||
|
|
|
@ -724,8 +724,13 @@ _DEFUN(_VFPRINTF_R, (data, fp, fmt0, ap),
|
||||||
cp = fmt;
|
cp = fmt;
|
||||||
#ifdef _MB_CAPABLE
|
#ifdef _MB_CAPABLE
|
||||||
while ((n = __mbtowc (data, &wc, fmt, MB_CUR_MAX,
|
while ((n = __mbtowc (data, &wc, fmt, MB_CUR_MAX,
|
||||||
__locale_charset (), &state)) > 0) {
|
__locale_charset (), &state)) != 0) {
|
||||||
if (wc == '%')
|
if (n < 0) {
|
||||||
|
/* Wave invalid chars through. */
|
||||||
|
memset (&state, 0, sizeof state);
|
||||||
|
n = 1;
|
||||||
|
}
|
||||||
|
else if (wc == '%')
|
||||||
break;
|
break;
|
||||||
fmt += n;
|
fmt += n;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue