summaryrefslogtreecommitdiff
path: root/include/asterisk/ael_structs.h
diff options
context:
space:
mode:
authorSteve Murphy <murf@digium.com>2008-08-08 00:48:35 +0000
committerSteve Murphy <murf@digium.com>2008-08-08 00:48:35 +0000
commita40f1cc1c55923b2b86465b0a0fb362a139ab2ea (patch)
tree56bf7ca809da4a38ed2718e833d32a3d55faa081 /include/asterisk/ael_structs.h
parent64a06c0298b1bc053bb01a708b9641a9a776c3ea (diff)
Merged revisions 136726 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4 ........ r136726 | murf | 2008-08-07 18:15:34 -0600 (Thu, 07 Aug 2008) | 32 lines (closes issue #13236) Reported by: korihor Wow, this one was a challenge! I regrouped and ran a new strategy for setting the ~~MACRO~~ value; I set it once per extension, up near the top. It is only set if there is a switch in the extension. So, I had to put in a chunk of code to detect a switch in the pval tree. I moved the code to insert the set of ~~exten~~ up to the beginning of the gen_prios routine, instead of down in the switch code. I learned that I have to push the detection of the switches down into the code, so everywhere I create a new exten in gen_prios, I make sure to pass onto it the values of the mother_exten first, and the exten next. I had to add a couple fields to the exten struct to accomplish this, in the ael_structs.h file. The checked field makes it so we don't repeat the switch search if it's been done. I also updated the regressions. ........ git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@136746 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'include/asterisk/ael_structs.h')
-rw-r--r--include/asterisk/ael_structs.h3
1 files changed, 2 insertions, 1 deletions
diff --git a/include/asterisk/ael_structs.h b/include/asterisk/ael_structs.h
index a342fa580..592439346 100644
--- a/include/asterisk/ael_structs.h
+++ b/include/asterisk/ael_structs.h
@@ -107,7 +107,8 @@ struct ael_extension
char *hints;
int regexten;
int is_switch;
- int has_switch;
+ int has_switch; /* set if a switch exists in the extension */
+ int checked_switch; /* set if we checked for a switch in the extension -- so we don't have to do it again */
struct ast_context *context;