summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMark Michelson <mmichelson@digium.com>2007-12-12 17:51:50 +0000
committerMark Michelson <mmichelson@digium.com>2007-12-12 17:51:50 +0000
commitb01f947025a2b23e4f04827e308274cc8f6de400 (patch)
tree3fec6c6878ce1e2bc856c3964629806f7a249055
parentd5b1808b0483e85092ee4a1270f9f880dc5e5bd8 (diff)
Same change to trunk as revision 92510. I'm not sure why I merged
this way, but I did. git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@92526 65c4cc65-6c06-0410-ace0-fbb531ad65f3
-rw-r--r--res/res_features.c12
1 files changed, 8 insertions, 4 deletions
diff --git a/res/res_features.c b/res/res_features.c
index b15c7064e..3d094efe7 100644
--- a/res/res_features.c
+++ b/res/res_features.c
@@ -1555,14 +1555,18 @@ static int ast_feature_interpret(struct ast_channel *chan, struct ast_channel *p
struct ast_call_feature *feature;
struct feature_group *fg = NULL;
struct feature_group_exten *fge;
- const char *dynamic_features=pbx_builtin_getvar_helper(chan,"DYNAMIC_FEATURES");
+ char *dynamic_features;
char *tmp, *tok;
- if (sense == FEATURE_SENSE_CHAN)
+ if (sense == FEATURE_SENSE_CHAN) {
ast_copy_flags(&features, &(config->features_caller), AST_FLAGS_ALL);
- else
+ dynamic_features = pbx_builtin_getvar_helper(chan, "DYNAMIC_FEATURES");
+ }
+ else {
ast_copy_flags(&features, &(config->features_callee), AST_FLAGS_ALL);
- ast_debug(3, "Feature interpret: chan=%s, peer=%s, sense=%d, features=%d\n", chan->name, peer->name, sense, features.flags);
+ dynamic_features = pbx_builtin_getvar_helper(peer, "DYNAMIC_FEATURES");
+ }
+ ast_debug(3, "Feature interpret: chan=%s, peer=%s, sense=%d, features=%d, dynamic=%s\n", chan->name, peer->name, sense, features.flags, dynamic_features);
ast_rwlock_rdlock(&features_lock);
for (x = 0; x < FEATURES_COUNT; x++) {