diff options
author | Tilghman Lesher <tilghman@meg.abyt.es> | 2010-06-23 21:06:40 +0000 |
---|---|---|
committer | Tilghman Lesher <tilghman@meg.abyt.es> | 2010-06-23 21:06:40 +0000 |
commit | 9ec4987d3bf744a3bc70e27737f3ee2235e91a51 (patch) | |
tree | 420b6c5eb99ef22cb101de502b353ea19a95a478 /res/ael | |
parent | 90c850b5b14eebdee1e9f9779abe6c059df78ade (diff) |
Ensure a NULL file while debugging cannot crash AEL.
(closes issue #17215)
Reported by: vazir
Patches:
20100518__issue17215.diff.txt uploaded by tilghman (license 14)
Tested by: tilghman
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@272260 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'res/ael')
-rw-r--r-- | res/ael/ael.flex | 2 | ||||
-rw-r--r-- | res/ael/ael.tab.c | 2 | ||||
-rw-r--r-- | res/ael/ael.y | 2 | ||||
-rw-r--r-- | res/ael/ael_lex.c | 2 |
4 files changed, 4 insertions, 4 deletions
diff --git a/res/ael/ael.flex b/res/ael/ael.flex index 0674ba8ff..4d441fb73 100644 --- a/res/ael/ael.flex +++ b/res/ael/ael.flex @@ -887,7 +887,7 @@ static void setup_filestack(char *fnamebuf2, int fnamebuf_siz, glob_t *globbuf, free(include_stack[include_stack_index].fname); include_stack[include_stack_index].fname = 0; } - include_stack[include_stack_index].fname = strdup(my_file); + include_stack[include_stack_index].fname = strdup(S_OR(my_file, "<none>")); include_stack[include_stack_index].lineno = my_lineno; include_stack[include_stack_index].colno = my_col+yyleng; if (my_file) diff --git a/res/ael/ael.tab.c b/res/ael/ael.tab.c index cbe9d8c33..4d44d44f3 100644 --- a/res/ael/ael.tab.c +++ b/res/ael/ael.tab.c @@ -3470,7 +3470,7 @@ struct pval *npval(pvaltype type, int first_line, int last_line, z->endline = last_line; z->startcol = first_column; z->endcol = last_column; - z->filename = strdup(my_file); + z->filename = strdup(S_OR(my_file, "<none>")); return z; } diff --git a/res/ael/ael.y b/res/ael/ael.y index c8bc9c78e..27e04c583 100644 --- a/res/ael/ael.y +++ b/res/ael/ael.y @@ -854,7 +854,7 @@ struct pval *npval(pvaltype type, int first_line, int last_line, z->endline = last_line; z->startcol = first_column; z->endcol = last_column; - z->filename = strdup(my_file); + z->filename = strdup(S_OR(my_file, "<none>")); return z; } diff --git a/res/ael/ael_lex.c b/res/ael/ael_lex.c index 6517644bd..02d8f82e4 100644 --- a/res/ael/ael_lex.c +++ b/res/ael/ael_lex.c @@ -3444,7 +3444,7 @@ static void setup_filestack(char *fnamebuf2, int fnamebuf_siz, glob_t *globbuf, free(include_stack[include_stack_index].fname); include_stack[include_stack_index].fname = 0; } - include_stack[include_stack_index].fname = strdup(my_file); + include_stack[include_stack_index].fname = strdup(S_OR(my_file, "<none>")); include_stack[include_stack_index].lineno = my_lineno; include_stack[include_stack_index].colno = my_col+yyleng; if (my_file) |