summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorSteve Murphy <murf@digium.com>2008-03-27 04:47:12 +0000
committerSteve Murphy <murf@digium.com>2008-03-27 04:47:12 +0000
commit2427603eaf8b9b055d57ed0e0ced3aef17b6807d (patch)
treeec41966a8e91928775f6488aca8bd156d989c5a6 /include
parent8f2ae67a3e6b4d0bd189d19e8f030b3134306273 (diff)
Merged revisions 111341 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4 ........ r111341 | murf | 2008-03-26 21:21:05 -0600 (Wed, 26 Mar 2008) | 15 lines (closes issue #12302) Reported by: pj Tested by: murf These changes will set a channel variable ~~EXTEN~~ just before generating code for a switch, with the value of ${EXTEN}. The exten is marked as having a switch, and ever after that, till the end of the exten, we substitute any ${EXTEN} with ${~~EXTEN~~} instead in application arguments; (and the ${EXTEN: also). The reason for this, is that because switches are coded using separate extensions to provide pattern matching, and jumping to/from these switch extensions messes up the ${EXTEN} value, which blows the minds of users. ........ git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@111360 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'include')
-rw-r--r--include/asterisk/ael_structs.h1
-rw-r--r--include/asterisk/pval.h2
2 files changed, 2 insertions, 1 deletions
diff --git a/include/asterisk/ael_structs.h b/include/asterisk/ael_structs.h
index 0a58ed378..a342fa580 100644
--- a/include/asterisk/ael_structs.h
+++ b/include/asterisk/ael_structs.h
@@ -107,6 +107,7 @@ struct ael_extension
char *hints;
int regexten;
int is_switch;
+ int has_switch;
struct ast_context *context;
diff --git a/include/asterisk/pval.h b/include/asterisk/pval.h
index ea545e4a4..acc9b30e1 100644
--- a/include/asterisk/pval.h
+++ b/include/asterisk/pval.h
@@ -138,7 +138,7 @@ struct pval *find_context(char *name);
struct pval *find_macro(char *name);
struct ael_priority *new_prio(void);
struct ael_extension *new_exten(void);
-void linkprio(struct ael_extension *exten, struct ael_priority *prio);
+void linkprio(struct ael_extension *exten, struct ael_priority *prio, struct ael_extension *mother_exten);
void destroy_extensions(struct ael_extension *exten);
/* static void linkexten(struct ael_extension *exten, struct ael_extension *add);
static void gen_prios(struct ael_extension *exten, char *label, pval *statement, struct ael_extension *mother_exten, struct ast_context *context ); */