Commit b84289f9 b84289f95f7c80e302b80af2bd2d2a4bb808fbcb by Sergey Poznyakoff

Resolve a conflict between the angle bracket

indicating file inclusion and the one starting a valid
RFC822 address.
1 parent e64ddc4d
...@@ -345,12 +345,18 @@ WORD [^ \t\n,:;<+=\*]+ ...@@ -345,12 +345,18 @@ WORD [^ \t\n,:;<+=\*]+
345 return STRING;} 345 return STRING;}
346 {WS} ; 346 {WS} ;
347 {WORD} { yylval.string = strdup (yytext); return STRING;} 347 {WORD} { yylval.string = strdup (yytext); return STRING;}
348 "<"{WS}{WORD} { char *p; 348 ^{WS}?"<"{WS}?{WORD} { char *p;
349 349 for (p = yytext; p < yytext + yyleng && isblank(*p); p++)
350 for (p = yytext + 1; p < yytext + yyleng; p++) 350 ;
351 for (p++; p < yytext + yyleng; p++)
351 if (!isspace (*p)) 352 if (!isspace (*p))
352 break; 353 break;
353 push_source (p, 1); } 354 push_source (p, 1); }
355 "<"{WORD} { yylval.string = xmalloc (yyleng + 2);
356 yylval.string[0] = '<';
357 memcpy(yylval.string, yytext, yyleng);
358 yylval.string[yyleng+1] = 0;
359 return STRING;}
354 =|\*|\+|,|:|\; return yytext[0]; 360 =|\*|\+|,|:|\; return yytext[0];
355 . { char *p; 361 . { char *p;
356 asprintf (&p, 362 asprintf (&p,
......