Browse Source

fix scanf bug reading literals after width-limited field

the field width limit was not being cleared before reading the
literal, causing spurious failures in scanf in cases like "%2d:"
scanning "00:".
rs-1.0
Rich Felker 14 years ago
parent
commit
31eaad4796
  1. 1
      src/stdio/vfscanf.c

1
src/stdio/vfscanf.c

@ -103,6 +103,7 @@ int vfscanf(FILE *f, const char *fmt, va_list ap)
}
if (*p != '%' || p[1] == '%') {
p += *p=='%';
shlim(f, 0);
c = shgetc(f);
if (c!=*p) {
shunget(f);

Loading…
Cancel
Save