X-Git-Url: https://git.armaanb.net/?p=opendoas.git;a=blobdiff_plain;f=parse.y;h=388c2a57f988a3b4e550f8332f08c3228968be13;hp=85e20cc81b9504686b1446f26ac19f313484e6a1;hb=454489f79baa3ee1c56498a1c35606b43822f138;hpb=2d7431ca9ec0b3204a5e9fd01d0fffd946c4d430 diff --git a/parse.y b/parse.y index 85e20cc..388c2a5 100644 --- a/parse.y +++ b/parse.y @@ -251,12 +251,12 @@ repeat: /* skip comments; NUL is allowed; no continuation */ while ((c = getc(yyfp)) != '\n') if (c == EOF) - return 0; + goto eof; yylval.colno = 0; yylval.lineno++; return c; case EOF: - return 0; + goto eof; } /* parsing next word */ @@ -330,7 +330,7 @@ eow: * the main loop. */ if (c == EOF) - return 0; + goto eof; else if (qpos == -1) /* accept, e.g., empty args: cmd foo args "" */ goto repeat; } @@ -344,4 +344,9 @@ eow: err(1, "%s", __func__); yylval.str = str; return TSTRING; + +eof: + if (ferror(yyfp)) + yyerror("input error reading config"); + return 0; }