[asterisk-commits] twilson: branch 1.4 r323732 - /branches/1.4/res/res_features.c

SVN commits to the Asterisk project asterisk-commits at lists.digium.com
Wed Jun 15 13:06:31 CDT 2011


Author: twilson
Date: Wed Jun 15 13:06:24 2011
New Revision: 323732

URL: http://svnview.digium.com/svn/asterisk?view=rev&rev=323732
Log:
Fix DYNAMIC_FEATURES

DYNAMIC_FEATURES were broken by a recent DTMF change. This patch makes
sure that dynamic features are also checked when deciding whether or not
to pass DTMF through or store it for interpreting.

(closes issue ASTERISK-17914)
Reported by: vrban

Modified:
    branches/1.4/res/res_features.c

Modified: branches/1.4/res/res_features.c
URL: http://svnview.digium.com/svn/asterisk/branches/1.4/res/res_features.c?view=diff&rev=323732&r1=323731&r2=323732
==============================================================================
--- branches/1.4/res/res_features.c (original)
+++ branches/1.4/res/res_features.c Wed Jun 15 13:06:24 2011
@@ -1653,8 +1653,12 @@
 
 /*! \brief Check if a feature exists */
 static int feature_check(struct ast_channel *chan, struct ast_flags *features, char *code) {
-
-	return feature_interpret_helper(chan, NULL, NULL, code, 0, NULL, features, FEATURE_INTERPRET_CHECK, NULL);
+	char *chan_dynamic_features;
+	ast_channel_lock(chan);
+	chan_dynamic_features = ast_strdupa(S_OR(pbx_builtin_getvar_helper(chan, "DYNAMIC_FEATURES"),""));
+	ast_channel_unlock(chan);
+
+	return feature_interpret_helper(chan, NULL, NULL, code, 0, chan_dynamic_features, features, FEATURE_INTERPRET_CHECK, NULL);
 }
 
 static void set_config_flags(struct ast_channel *chan, struct ast_channel *peer, struct ast_bridge_config *config)




More information about the asterisk-commits mailing list