#include "shgetc.h"
#include "intscan.h"
#include "floatscan.h"
-#include "libc.h"
#define SIZE_hh -2
#define SIZE_h -1
#if 1
#undef getwc
#define getwc(f) \
- ((f)->rpos < (f)->rend && *(f)->rpos < 128 ? *(f)->rpos++ : (getwc)(f))
+ ((f)->rpos != (f)->rend && *(f)->rpos < 128 ? *(f)->rpos++ : (getwc)(f))
#undef ungetwc
#define ungetwc(c,f) \
continue;
}
if (*p != '%' || p[1] == '%') {
- p += *p=='%';
- c = getwc(f);
+ if (*p == '%') {
+ p++;
+ while (iswspace((c=getwc(f)))) pos++;
+ } else {
+ c = getwc(f);
+ }
if (c!=*p) {
ungetwc(c, f);
if (c<0) goto input_fail;