FS-8413: Segfault calling session:getVariable(nil) in lua script

script calling session:getVariable() with a null variable
name will cause FreeSWITCH to segfault.

This change checks whether varname parameter to
switch_channel_get_variable_dup is non-NULL.
This commit is contained in:
Mark Lipscombe 2015-11-04 17:33:11 +11:00 committed by Michael Jerris
parent 0e551408d4
commit 6d8edab59b
1 changed files with 24 additions and 22 deletions

View File

@ -930,6 +930,7 @@ SWITCH_DECLARE(const char *) switch_channel_get_variable_dup(switch_channel_t *c
switch_mutex_lock(channel->profile_mutex); switch_mutex_lock(channel->profile_mutex);
if (!zstr(varname)) {
if (channel->scope_variables) { if (channel->scope_variables) {
switch_event_t *ep; switch_event_t *ep;
@ -959,6 +960,7 @@ SWITCH_DECLARE(const char *) switch_channel_get_variable_dup(switch_channel_t *c
} }
} }
} }
}
if (dup && v != vdup) { if (dup && v != vdup) {
if (v) { if (v) {