* stdio-common/vfscanf.c: Fix handling of %l[].
	Reported by Mitsuru Chinen <mchinen@yamato.ibm.com>.
This commit is contained in:
Ulrich Drepper 2001-08-22 18:29:46 +00:00
parent 30c8be92a3
commit bed381426f
2 changed files with 6 additions and 4 deletions

View File

@ -1,5 +1,8 @@
2001-08-22 Ulrich Drepper <drepper@redhat.com>
* stdio-common/vfscanf.c: Fix handling of %l[].
Reported by Mitsuru Chinen <mchinen@yamato.ibm.com>.
* elf/dl-addr.c (_dl_addr): Fix tests to determine dli_sname.
* malloc/mtrace.c (tr_where): dli_sname always points to a
non-empty string if != NULL.

View File

@ -2090,19 +2090,18 @@ __vfscanf (FILE *s, const char *format, va_list argptr)
size_t n;
/* Convert it into a wide character. */
n = __mbrtowc (wstr, buf, cnt, &cstate);
buf[0] = c;
n = __mbrtowc (wstr, buf, 1, &cstate);
if (n == (size_t) -2)
{
/* Possibly correct character, just not enough
input. */
++cnt;
assert (cnt < MB_CUR_MAX);
continue;
}
if (n != cnt)
encode_error ();
++wstr;
if ((flags & MALLOC)
&& wstr == (wchar_t *) *strptr + strsize)