mirror of
https://github.com/asterisk/asterisk.git
synced 2025-09-18 18:58:22 +00:00
Merged revisions 97849 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4 ........ r97849 | murf | 2008-01-10 13:21:27 -0700 (Thu, 10 Jan 2008) | 1 line This is a fix for 2 things: a problem Terry was having in OSX with null pointers, which was my fault, as I probably forgot to run the sed script last time I made mods. So, I moved the fix into the flex input itself. Then, I found when I used flex 2.5.33, that it was using __STDC_VERSION__, and that's not real good; so I added back in a DIFFERENT sed script to fix that little mess. Tested everything, a couple different ways. Hope I did no harm, at the least. ........ git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@97850 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
@@ -117,8 +117,8 @@ ast_expr2.c ast_expr2.h:
|
|||||||
bison -o $@ -d --name-prefix=ast_yy ast_expr2.y
|
bison -o $@ -d --name-prefix=ast_yy ast_expr2.y
|
||||||
|
|
||||||
ast_expr2f.c:
|
ast_expr2f.c:
|
||||||
flex -o $@ --full ast_expr2.fl
|
flex -o $@ --full ast_expr2.fl # moved the correction of yyfree into the flex input file itself.
|
||||||
sed 's@free( (char \*) ptr );@if(ptr) free( (char *) ptr );@' ast_expr2f.c > zz
|
sed 's@#if __STDC_VERSION__ >= 199901L@#if !defined __STDC_VERSION__ || __STDC_VERSION__ >= 199901L@' ast_expr2f.c > zz
|
||||||
mv zz ast_expr2f.c
|
mv zz ast_expr2f.c
|
||||||
|
|
||||||
testexpr2: ast_expr2f.c ast_expr2.c ast_expr2.h
|
testexpr2: ast_expr2f.c ast_expr2.c ast_expr2.h
|
||||||
|
@@ -121,6 +121,7 @@ static char *expr2_token_subst(const char *mess);
|
|||||||
%option bison-bridge
|
%option bison-bridge
|
||||||
%option bison-locations
|
%option bison-locations
|
||||||
%option noyywrap
|
%option noyywrap
|
||||||
|
%option noyyfree
|
||||||
%x var trail
|
%x var trail
|
||||||
|
|
||||||
%%
|
%%
|
||||||
@@ -236,6 +237,14 @@ static char *expr2_token_subst(const char *mess);
|
|||||||
int ast_yyparse(void *); /* need to/should define this prototype for the call to yyparse */
|
int ast_yyparse(void *); /* need to/should define this prototype for the call to yyparse */
|
||||||
int ast_yyerror(const char *, YYLTYPE *, struct parse_io *); /* likewise */
|
int ast_yyerror(const char *, YYLTYPE *, struct parse_io *); /* likewise */
|
||||||
|
|
||||||
|
void ast_yyfree(void *ptr, yyscan_t yyscanner)
|
||||||
|
{
|
||||||
|
if (ptr) /* the normal generated yyfree func just frees its first arg;
|
||||||
|
this get complaints on some systems, as sometimes this
|
||||||
|
arg is a nil ptr! It's usually not fatal, but is irritating! */
|
||||||
|
free( (char *) ptr );
|
||||||
|
}
|
||||||
|
|
||||||
int ast_expr(char *expr, char *buf, int length, struct ast_channel *chan)
|
int ast_expr(char *expr, char *buf, int length, struct ast_channel *chan)
|
||||||
{
|
{
|
||||||
struct parse_io io;
|
struct parse_io io;
|
||||||
|
2222
main/ast_expr2f.c
2222
main/ast_expr2f.c
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user