When pcap_compile() detects an error, it longjmp()'s out of the

scanner/parser. FreeBSD recently made 'flex' its default implementation
of 'lex'. One of the incompatibilities of 'flex' vs. 'lex' is that
if you longjmp() out of the scanner, you must call yyrestart()
before doing another scan (as documented in flex(1)). So add an
invocation to yyrestart() in lex_init(). This change should be
backwards compatible with the original 'lex'.

PR:	bin/24116
This commit is contained in:
Archie Cobbs 2001-01-07 00:26:32 +00:00
parent ad4032fe09
commit dceab8ea63
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=70735

View File

@ -273,6 +273,7 @@ lex_init(buf)
char *buf;
{
in_buffer = buf;
yyrestart(NULL);
}
/*