summaryrefslogtreecommitdiff
path: root/pbx/ael/ael.flex
diff options
context:
space:
mode:
Diffstat (limited to 'pbx/ael/ael.flex')
-rw-r--r--pbx/ael/ael.flex21
1 files changed, 7 insertions, 14 deletions
diff --git a/pbx/ael/ael.flex b/pbx/ael/ael.flex
index 45cd1e0d4..b4c785571 100644
--- a/pbx/ael/ael.flex
+++ b/pbx/ael/ael.flex
@@ -240,7 +240,7 @@ includes { STORE_POS; return KW_INCLUDES;}
} else {
STORE_LOC;
yylval->str = strdup(yytext);
- yylval->str[strlen(yylval->str)-1] = '\0'; /* trim trailing ')' */
+ yylval->str[yyleng-1] = '\0'; /* trim trailing ')' */
unput(')');
BEGIN(0);
return word;
@@ -290,19 +290,13 @@ includes { STORE_POS; return KW_INCLUDES;}
yymore();
} else {
STORE_LOC;
- yylval->str = strdup(yytext);
- if(yyleng > 1 )
- yylval->str[yyleng-1] = '\0'; /* trim trailing ')' */
BEGIN(0);
- if ( !strcmp(yylval->str,")") ) {
- free(yylval->str);
- yylval->str = 0;
- my_col++; /* XXX why ? */
+ if ( !strcmp(yytext, ")") )
return RP;
- } else {
- unput(')');
- return word;
- }
+ yylval->str = strdup(yytext);
+ yylval->str[yyleng-1] = '\0'; /* trim trailing ')' */
+ unput(')');
+ return word;
}
}
@@ -321,8 +315,7 @@ includes { STORE_POS; return KW_INCLUDES;}
/* printf("Got argg2 word %s\n", yylval->str); */
unput(',');
commaout = 1;
- if (yyleng > 1 )
- *(yylval->str+yyleng-1)=0;
+ yylval->str[yyleng-1] = '\0';
return word;
} else {
commaout = 0;