diff options
author | Manuel Novoa III <mjn3@codepoet.org> | 2002-09-06 15:34:42 +0000 |
---|---|---|
committer | Manuel Novoa III <mjn3@codepoet.org> | 2002-09-06 15:34:42 +0000 |
commit | 8b02a71f53d75bd679c46141a0a2a8f8b26aef19 (patch) | |
tree | edeaf6cbaa06a28eab43b852eb840948990020d5 /libc/stdio | |
parent | 742b3c935b43d864f0dc90b9af2ae6138654fd7a (diff) |
Patch from Tero_Lyytik�inen <tero@paravant.fi> to fix bug in matchchar
case.
Diffstat (limited to 'libc/stdio')
-rw-r--r-- | libc/stdio/scanf.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/libc/stdio/scanf.c b/libc/stdio/scanf.c index 7ebde12ea..7c316cdf8 100644 --- a/libc/stdio/scanf.c +++ b/libc/stdio/scanf.c @@ -29,6 +29,9 @@ * * So uClibc's *scanf functions conform to the standard, and glibc's * implementation doesn't for the "100ergs" case mentioned above. + * + * Sep 6, 2002 + * Patch from Tero_Lyytikäinen <tero@paravant.fi> to fix bug in matchchar case. */ #define _ISOC99_SOURCE /* for LLONG_MAX primarily... */ @@ -581,6 +584,7 @@ int vfscanf(FILE *fp, const char *format, va_list ap) } else { /* Match the current fmt char. */ matchchar: if (scan_getc_nw(&sc) != *fmt) { + scan_ungetc(&sc); goto done; } scan_getc_nw(&sc); |