diff --git a/src/include/switch_channel.h b/src/include/switch_channel.h index 80057584bc..5ee25be3b8 100644 --- a/src/include/switch_channel.h +++ b/src/include/switch_channel.h @@ -455,7 +455,7 @@ SWITCH_DECLARE(void) switch_channel_event_set_data(switch_channel_t *channel, sw \return the original string if no expansion takes place otherwise a new string that must be freed \note it's necessary to test if the return val is the same as the input and free the string if it is not. */ -SWITCH_DECLARE(char *) switch_channel_expand_variables(switch_channel_t *channel, char *in); +SWITCH_DECLARE(char *) switch_channel_expand_variables(switch_channel_t *channel, const char *in); SWITCH_DECLARE(char *) switch_channel_build_param_string(switch_channel_t *channel, switch_caller_profile_t *caller_profile, const char *prefix); /** @} */ diff --git a/src/switch_channel.c b/src/switch_channel.c index ebe61565c6..82ff540b7e 100644 --- a/src/switch_channel.c +++ b/src/switch_channel.c @@ -1264,12 +1264,12 @@ if ((dp = realloc(data, olen))) {\ memset(c, 0, olen - cpos);\ }} \ -SWITCH_DECLARE(char *) switch_channel_expand_variables(switch_channel_t *channel, char *in) +SWITCH_DECLARE(char *) switch_channel_expand_variables(switch_channel_t *channel, const char *in) { - char *q, *p, *c = NULL; + char *p, *c = NULL; char *data, *indup; size_t sp = 0, len = 0, olen = 0, vtype = 0, br = 0, cpos, block = 128; - const char *sub_val = NULL; + const char *q, *sub_val = NULL; char *cloned_sub_val = NULL; char *func_val = NULL; int nv = 0; @@ -1295,7 +1295,7 @@ SWITCH_DECLARE(char *) switch_channel_expand_variables(switch_channel_t *channel } if (!nv) { - return in; + return (char *)in; } nv = 0; @@ -1468,7 +1468,7 @@ SWITCH_DECLARE(char *) switch_channel_expand_variables(switch_channel_t *channel switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_CRIT, "Memory Error!\n"); free(data); free(indup); - return in; + return (char *)in; } } if ((nlen = sub_val ? strlen(sub_val) : 0)) {