提交 fdf9d0fd authored 作者: Anthony Minessale's avatar Anthony Minessale

prevent seg

git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@10297 d0543943-73ff-0310-b7d9-9358b9ac24b2
上级 08e67499
...@@ -79,6 +79,8 @@ SWITCH_DECLARE(void) switch_core_session_hupall_matching_var(const char *var_nam ...@@ -79,6 +79,8 @@ SWITCH_DECLARE(void) switch_core_session_hupall_matching_var(const char *var_nam
void *val; void *val;
switch_core_session_t *session; switch_core_session_t *session;
if (!var_val) return;
switch_mutex_lock(runtime.throttle_mutex); switch_mutex_lock(runtime.throttle_mutex);
for (hi = switch_hash_first(NULL, session_manager.session_table); hi; hi = switch_hash_next(hi)) { for (hi = switch_hash_first(NULL, session_manager.session_table); hi; hi = switch_hash_next(hi)) {
switch_hash_this(hi, NULL, NULL, &val); switch_hash_this(hi, NULL, NULL, &val);
...@@ -86,7 +88,7 @@ SWITCH_DECLARE(void) switch_core_session_hupall_matching_var(const char *var_nam ...@@ -86,7 +88,7 @@ SWITCH_DECLARE(void) switch_core_session_hupall_matching_var(const char *var_nam
const char *this_val; const char *this_val;
session = (switch_core_session_t *) val; session = (switch_core_session_t *) val;
switch_core_session_read_lock(session); switch_core_session_read_lock(session);
if ((this_val = switch_channel_get_variable(session->channel, var_name)) && && var_val && (!strcmp(this_val, var_val))) { if ((this_val = switch_channel_get_variable(session->channel, var_name)) && (!strcmp(this_val, var_val))) {
switch_channel_hangup(switch_core_session_get_channel(session), cause); switch_channel_hangup(switch_core_session_get_channel(session), cause);
} }
switch_core_session_rwunlock(session); switch_core_session_rwunlock(session);
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论