diff options
author | jpeeler <jpeeler@f38db490-d61c-443f-a65b-d21fe96a405b> | 2010-06-18 21:33:57 +0000 |
---|---|---|
committer | jpeeler <jpeeler@f38db490-d61c-443f-a65b-d21fe96a405b> | 2010-06-18 21:33:57 +0000 |
commit | af442a3e3598f8c207c999ee66c202a370303d9e (patch) | |
tree | cb5064e647f8553e11e61dbb064a0d10afdb1cb1 /include | |
parent | f35da32eb140cf5d6a424e1b84d8c5717b2ff40e (diff) |
Merged revisions 271483 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk
................
r271483 | jpeeler | 2010-06-18 16:32:09 -0500 (Fri, 18 Jun 2010) | 18 lines
Merged revisions 271399 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r271399 | jpeeler | 2010-06-18 14:28:24 -0500 (Fri, 18 Jun 2010) | 11 lines
Fix crash when parsing some heavily nested statements in AEL on reload.
Due to the recursion used when compiling AEL in gen_prios, all the stack space
was being consumed when parsing some AEL that contained nesting 13 levels deep.
Changing a few large buffers to be heap allocated fixed the crash, although I
did not test how many more levels can now be safely used.
(closes issue #16053)
Reported by: diLLec
Tested by: jpeeler
........
................
git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.6.2@271484 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'include')
-rw-r--r-- | include/asterisk/pval.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/include/asterisk/pval.h b/include/asterisk/pval.h index af9b79175..cd8c5d366 100644 --- a/include/asterisk/pval.h +++ b/include/asterisk/pval.h @@ -143,7 +143,7 @@ void destroy_extensions(struct ael_extension *exten); static void gen_prios(struct ael_extension *exten, char *label, pval *statement, struct ael_extension *mother_exten, struct ast_context *context ); */ void set_priorities(struct ael_extension *exten); void add_extensions(struct ael_extension *exten); -void ast_compile_ael2(struct ast_context **local_contexts, struct ast_hashtab *local_table, struct pval *root); +int ast_compile_ael2(struct ast_context **local_contexts, struct ast_hashtab *local_table, struct pval *root); void destroy_pval(pval *item); void destroy_pval_item(pval *item); int is_float(char *arg ); |