Ensure a NULL file while debugging cannot crash AEL.
authorTilghman Lesher <tilghman@meg.abyt.es>
Wed, 23 Jun 2010 21:06:40 +0000 (21:06 +0000)
committerTilghman Lesher <tilghman@meg.abyt.es>
Wed, 23 Jun 2010 21:06:40 +0000 (21:06 +0000)
(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

res/ael/ael.flex
res/ael/ael.tab.c
res/ael/ael.y
res/ael/ael_lex.c

index 0674ba8..4d441fb 100644 (file)
@@ -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;
                        }
                                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)
                        include_stack[include_stack_index].lineno = my_lineno;
                        include_stack[include_stack_index].colno = my_col+yyleng;
                        if (my_file)
index cbe9d8c..4d44d44 100644 (file)
@@ -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->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;
 }
 
        return z;
 }
 
index c8bc9c7..27e04c5 100644 (file)
@@ -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->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;
 }
 
        return z;
 }
 
index 6517644..02d8f82 100644 (file)
@@ -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;
                        }
                                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)
                        include_stack[include_stack_index].lineno = my_lineno;
                        include_stack[include_stack_index].colno = my_col+yyleng;
                        if (my_file)