[Freeswitch-svn] [commit] r6353 - in freeswitch/trunk/src/mod/applications: mod_conference mod_dptools mod_rss

Freeswitch SVN mikej at freeswitch.org
Mon Nov 19 22:44:20 EST 2007


Author: mikej
Date: Mon Nov 19 22:44:19 2007
New Revision: 6353

Modified:
   freeswitch/trunk/src/mod/applications/mod_conference/mod_conference.c
   freeswitch/trunk/src/mod/applications/mod_dptools/mod_dptools.c
   freeswitch/trunk/src/mod/applications/mod_rss/mod_rss.c

Log:
merge MODAPP-50 (modified for changes in api)

Modified: freeswitch/trunk/src/mod/applications/mod_conference/mod_conference.c
==============================================================================
--- freeswitch/trunk/src/mod/applications/mod_conference/mod_conference.c	(original)
+++ freeswitch/trunk/src/mod/applications/mod_conference/mod_conference.c	Mon Nov 19 22:44:19 2007
@@ -3127,7 +3127,7 @@
 static switch_status_t conf_api_sub_transfer(conference_obj_t * conference, switch_stream_handle_t *stream, int argc, char **argv)
 {
 	switch_status_t ret_status = SWITCH_STATUS_SUCCESS;
-	char *params = NULL;
+	char *params = NULL, *chanvars = NULL;
 	assert(conference != NULL);
 	assert(stream != NULL);
 
@@ -3170,8 +3170,9 @@
 					profile_name = "default";
 				}
 				params = switch_mprintf("conf_name=%s&profile_name=%s", conf_name, profile_name);
+				chanvars = switch_channel_build_param_string(channel, NULL, params);
 				/* Open the config from the xml registry  */
-				if (!(cxml = switch_xml_open_cfg(global_cf_name, &cfg, params))) {
+				if (!(cxml = switch_xml_open_cfg(global_cf_name, &cfg, chanvars))) {
 					switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_ERROR, "open of %s failed\n", global_cf_name);
 					goto done;
 				}
@@ -3243,6 +3244,8 @@
 
   done:
 	switch_safe_free(params);
+	switch_safe_free(chanvars);
+
 	return ret_status;
 }
 

Modified: freeswitch/trunk/src/mod/applications/mod_dptools/mod_dptools.c
==============================================================================
--- freeswitch/trunk/src/mod/applications/mod_dptools/mod_dptools.c	(original)
+++ freeswitch/trunk/src/mod/applications/mod_dptools/mod_dptools.c	Mon Nov 19 22:44:19 2007
@@ -853,13 +853,14 @@
 SWITCH_STANDARD_APP(ivr_application_function)
 {
 	switch_channel_t *channel = switch_core_session_get_channel(session);
-	char *params;
+	char *params,*chanvars;
 
 	if (channel && data && (params = switch_core_session_strdup(session, data))) {
 		switch_xml_t cxml = NULL, cfg = NULL, xml_menus = NULL, xml_menu = NULL;
 
 		// Open the config from the xml registry
-		if ((cxml = switch_xml_open_cfg(ivr_cf_name, &cfg, NULL)) != NULL) {
+		chanvars = switch_channel_build_param_string(channel, NULL, NULL);
+		if ((cxml = switch_xml_open_cfg(ivr_cf_name, &cfg, chanvars)) != NULL) {
 			if ((xml_menus = switch_xml_child(cfg, "menus"))) {
 				xml_menu = switch_xml_find_child(xml_menus, "menu", "name", params);
 
@@ -890,6 +891,7 @@
 		} else {
 			switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_ERROR, "open of %s failed\n", ivr_cf_name);
 		}
+		switch_safe_free(chanvars);
 	}
 }
 

Modified: freeswitch/trunk/src/mod/applications/mod_rss/mod_rss.c
==============================================================================
--- freeswitch/trunk/src/mod/applications/mod_rss/mod_rss.c	(original)
+++ freeswitch/trunk/src/mod/applications/mod_rss/mod_rss.c	Mon Nov 19 22:44:19 2007
@@ -186,6 +186,7 @@
 	uint32_t matches = 0;
 	switch_input_args_t args = { 0 };
 	const char *vcf = NULL;
+	char *chanvars = NULL;
 
 	channel = switch_core_session_get_channel(session);
 	assert(channel != NULL);
@@ -194,10 +195,12 @@
 		cf = vcf;
 	}
 
+    chanvars = switch_channel_build_param_string(channel, NULL, NULL);
 	if (!(cxml = switch_xml_open_cfg(cf, &cfg, NULL))) {
 		switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_ERROR, "open of %s failed\n", cf);
 		return;
 	}
+	switch_safe_free(chanvars);
 
 	if ((feeds = switch_xml_child(cfg, "feeds"))) {
 		for (feed = switch_xml_child(feeds, "feed"); feed; feed = feed->next) {



More information about the Freeswitch-svn mailing list