From 09438518bb483d7bd6451311e3a9bed740b40893 Mon Sep 17 00:00:00 2001 From: Rainer Gerhards Date: Fri, 14 Sep 2012 07:51:28 +0200 Subject: Fix length calculation for script string constants This could lead to various problems, like if-filters not working. Note this is a regression from yesterdays escape fix, so there exist no released version with this problem. --- grammar/lexer.l | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/grammar/lexer.l b/grammar/lexer.l index 289d54ff..6ac7fd9a 100644 --- a/grammar/lexer.l +++ b/grammar/lexer.l @@ -125,12 +125,12 @@ int fileno(FILE *stream); \'([^'\\]|\\['"\\$bntr]|\\x[0-9a-f][0-9a-f]|\\[0-7][0-7][0-7])*\' { yytext[yyleng-1] = '\0'; unescapeStr((uchar*)yytext+1, yyleng-2); - yylval.estr = es_newStrFromBuf(yytext+1, strlen(yytext)); + yylval.estr = es_newStrFromBuf(yytext+1, strlen(yytext)-1); return STRING; } \"([^"\\$]|\\["'\\$bntr]|\\x[0-9a-f][0-9a-f]|\\[0-7][0-7][0-7])*\" { yytext[yyleng-1] = '\0'; unescapeStr((uchar*)yytext+1, yyleng-2); - yylval.estr = es_newStrFromBuf(yytext+1, yyleng-2); + yylval.estr = es_newStrFromBuf(yytext+1, strlen(yytext)-1); return STRING; } [ \t\n] [a-z][a-z0-9_]* { yylval.estr = es_newStrFromCStr(yytext, yyleng); -- cgit v1.2.3