From: Anthony Minessale Date: Fri, 25 Jan 2008 19:47:53 +0000 (+0000) Subject: mupdate X-Git-Tag: v1.0-rc1~560 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=848ed982e882192f6f28e17c5f1bd379aeda9f82;p=thirdparty%2Ffreeswitch.git mupdate git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@7358 d0543943-73ff-0310-b7d9-9358b9ac24b2 --- diff --git a/src/mod/dialplans/mod_dialplan_xml/mod_dialplan_xml.c b/src/mod/dialplans/mod_dialplan_xml/mod_dialplan_xml.c index d83b465f92..04f4c31a1d 100644 --- a/src/mod/dialplans/mod_dialplan_xml/mod_dialplan_xml.c +++ b/src/mod/dialplans/mod_dialplan_xml/mod_dialplan_xml.c @@ -134,11 +134,17 @@ static int parse_exten(switch_core_session_t *session, switch_caller_profile_t * for (xaction = switch_xml_child(xcond, "action"); xaction; xaction = xaction->next) { char *application = (char *) switch_xml_attr_soft(xaction, "application"); - char *data = (char *) switch_xml_attr_soft(xaction, "data"); + char *data = NULL; char *substituted = NULL; uint32_t len = 0; char *app_data = NULL; + if (xaction->txt) { + data = xaction->txt; + } else { + data = (char *) switch_xml_attr_soft(xaction, "data"); + } + if (field && strchr(expression, '(')) { len = (uint32_t) (strlen(data) + strlen(field_data) + 10); if (!(substituted = malloc(len))) {