diff options
author | murf <murf@f38db490-d61c-443f-a65b-d21fe96a405b> | 2008-03-27 05:16:26 +0000 |
---|---|---|
committer | murf <murf@f38db490-d61c-443f-a65b-d21fe96a405b> | 2008-03-27 05:16:26 +0000 |
commit | 5868a9006ab7002cfe9182753c170b20685124f5 (patch) | |
tree | 30a928594ec36544e649eae1c709df35c8002b14 /include | |
parent | 447ce62278909ca5b81d8dc42dbae125d524b65e (diff) |
Merged revisions 111360 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk
................
r111360 | murf | 2008-03-26 22:47:12 -0600 (Wed, 26 Mar 2008) | 23 lines
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: http://svn.digium.com/svn/asterisk/branches/1.6.0@111361 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'include')
-rw-r--r-- | include/asterisk/ael_structs.h | 1 | ||||
-rw-r--r-- | include/asterisk/pval.h | 2 |
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 edfd647b3..2dff24ddc 100644 --- a/include/asterisk/pval.h +++ b/include/asterisk/pval.h @@ -137,7 +137,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 ); */ |