[commit] r4187 - in freeswitch/trunk/src: . mod/applications/mod_dptools mod/languages/mod_spidermonkey
Author: mikej Date: Fri Feb 9 17:55:48 2007 New Revision: 4187 Modified: freeswitch/trunk/src/mod/applications/mod_dptools/mod_dptools.c freeswitch/trunk/src/mod/languages/mod_spidermonkey/mod_spidermonkey.c freeswitch/trunk/src/switch_ivr.c Log: fix paramater checking on switch_ivr_phrase_macro and it's consumers. 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 Fri Feb 9 17:55:48 2007 @@ -128,9 +128,8 @@ if ((mdata = strchr(macro, ','))) { *mdata++ = '\0'; } - if (!(lang = switch_channel_get_variable(channel, "language"))) { - lang = "en"; - } + + lang = switch_channel_get_variable(channel, "language"); switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "Execute %s(%s) lang %s\n", macro, mdata, lang); switch_ivr_phrase_macro(session, macro, mdata, lang, NULL); Modified: freeswitch/trunk/src/mod/languages/mod_spidermonkey/mod_spidermonkey.c ============================================================================== --- freeswitch/trunk/src/mod/languages/mod_spidermonkey/mod_spidermonkey.c (original) +++ freeswitch/trunk/src/mod/languages/mod_spidermonkey/mod_spidermonkey.c Fri Feb 9 17:55:48 2007 @@ -1029,8 +1029,11 @@ if (switch_strlen_zero(phrase_name)) { return JS_FALSE; } + } else { + return JS_FALSE; } + if (argc > 1) { phrase_data = JS_GetStringBytes(JS_ValueToString(cx, argv[1])); } Modified: freeswitch/trunk/src/switch_ivr.c ============================================================================== --- freeswitch/trunk/src/switch_ivr.c (original) +++ freeswitch/trunk/src/switch_ivr.c Fri Feb 9 17:55:48 2007 @@ -4617,6 +4617,19 @@ channel = switch_core_session_get_channel(session); assert(channel != NULL); + if (!macro_name) { + switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_ERROR, "No phrase macro specified.\n"); + return status; + } + + if (!lang) { + lang = "en"; + } + + if (!data) { + data = ""; + } + switch_url_encode(data, enc_hint, sizeof(enc_hint)); snprintf(hint_data, sizeof(hint_data), "macro_name=%s&lang=%s&data=%s", macro_name, lang, enc_hint);
participants (1)
-
Freeswitch SVN