From 3082aaa44050e886b08b9e901910bbebce266dea Mon Sep 17 00:00:00 2001 From: Michael Jerris Date: Sun, 6 Jan 2008 22:18:47 +0000 Subject: [PATCH] arg checking. git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@7111 d0543943-73ff-0310-b7d9-9358b9ac24b2 --- src/mod/applications/mod_conference/mod_conference.c | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/src/mod/applications/mod_conference/mod_conference.c b/src/mod/applications/mod_conference/mod_conference.c index 1a5df6a109..dd5ed80a7b 100644 --- a/src/mod/applications/mod_conference/mod_conference.c +++ b/src/mod/applications/mod_conference/mod_conference.c @@ -3952,8 +3952,8 @@ SWITCH_STANDARD_APP(conference_function) uint32_t flags = 0; conference_member_t member = { 0 }; conference_obj_t *conference = NULL; - switch_channel_t *channel = NULL; - char *mydata = switch_core_session_strdup(session, data); + switch_channel_t *channel = switch_core_session_get_channel(session); + char *mydata = NULL; char *conf_name = NULL; char *bridge_prefix = "bridge:"; char *flags_prefix = "+flags{"; @@ -3968,9 +3968,15 @@ SWITCH_STANDARD_APP(conference_function) conf_xml_cfg_t xml_cfg = { 0 }; char *params = NULL; - channel = switch_core_session_get_channel(session); switch_assert(channel != NULL); + if (switch_strlen_zero(data)) { + switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_CRIT, "Invalid arguments\n"); + return; + } + + mydata = switch_core_session_strdup(session, data); + if (!mydata) { switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_CRIT, "Pool Failure\n"); return;