diff --git a/wildtest.c b/wildtest.c index 482cdf17..ace0c381 100644 --- a/wildtest.c +++ b/wildtest.c @@ -163,14 +163,17 @@ main(int argc, char **argv) flag[i] = 0; else flag[i] = -1; - if (*++s != ' ' && *s != '\t') + if (!*s || (*++s != ' ' && *s != '\t')) flag[i] = -1; if (flag[i] < 0) { fprintf(stderr, "Invalid flag syntax on line %d of %s:\n%s", line, *argv, buf); exit(1); } - while (*++s == ' ' || *s == '\t') {} + if (*s) + s++; + while (*s == ' ' || *s == '\t') + s++; } for (i = 0; i <= 1; i++) { if (*s == '\'' || *s == '"' || *s == '`') { @@ -194,7 +197,10 @@ main(int argc, char **argv) while (*++s && *s != ' ' && *s != '\t' && *s != '\n') {} end[i] = s; } - while (*++s == ' ' || *s == '\t') {} + if (*s) + s++; + while (*s == ' ' || *s == '\t') + s++; } *end[0] = *end[1] = '\0'; run_test(line, flag[0],