]> granicus.if.org Git - sudo/commitdiff
Call yyrestart() on a parse error to reset the lexer state.
authorTodd C. Miller <Todd.Miller@courtesan.com>
Tue, 9 Nov 1999 20:12:20 +0000 (20:12 +0000)
committerTodd C. Miller <Todd.Miller@courtesan.com>
Tue, 9 Nov 1999 20:12:20 +0000 (20:12 +0000)
visudo.c

index c8b6641031b192604a07af5a2be8bf3e419f7e85..f644fee202f8b28c19ac7e4364a4aed859fe1549 100644 (file)
--- a/visudo.c
+++ b/visudo.c
@@ -96,6 +96,7 @@ int addr_matches              __P((char *));
 int netgr_matches              __P((char *, char *, char *));
 int usergr_matches             __P((char *, char *));
 void init_parser               __P((void));
+void yyrestart                 __P((FILE *));
 
 /*
  * External globals exported by the parser
@@ -299,6 +300,7 @@ main(argc, argv)
                case 'x' :      Exit(0);
                                break;
            }
+           yyrestart(yyin);    /* reset lexer */
        }
     } while (parse_error == TRUE);