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

fix

git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@9025 d0543943-73ff-0310-b7d9-9358b9ac24b2
上级 c75f2595
...@@ -667,12 +667,12 @@ SWITCH_DECLARE(void) switch_core_session_reset(switch_core_session_t *session, s ...@@ -667,12 +667,12 @@ SWITCH_DECLARE(void) switch_core_session_reset(switch_core_session_t *session, s
switch_size_t has; switch_size_t has;
/* clear resamplers */ /* clear resamplers */
switch_mutex_lock(session->resample_mutex);
switch_resample_destroy(&session->read_resampler); switch_resample_destroy(&session->read_resampler);
switch_resample_destroy(&session->write_resampler); switch_resample_destroy(&session->write_resampler);
switch_mutex_unlock(session->resample_mutex);
/* clear indications */ /* clear indications */
switch_core_session_flush_message(session); switch_core_session_flush_message(session);
/* wipe theese, they will be recreated if need be */ /* wipe theese, they will be recreated if need be */
switch_buffer_destroy(&session->raw_read_buffer); switch_buffer_destroy(&session->raw_read_buffer);
switch_buffer_destroy(&session->raw_write_buffer); switch_buffer_destroy(&session->raw_write_buffer);
...@@ -736,6 +736,9 @@ SWITCH_DECLARE(void) switch_core_session_perform_destroy(switch_core_session_t * ...@@ -736,6 +736,9 @@ SWITCH_DECLARE(void) switch_core_session_perform_destroy(switch_core_session_t *
switch_log_printf(SWITCH_CHANNEL_ID_LOG, file, func, line, NULL, SWITCH_LOG_NOTICE, "Close Channel %s [%s]\n", switch_log_printf(SWITCH_CHANNEL_ID_LOG, file, func, line, NULL, SWITCH_LOG_NOTICE, "Close Channel %s [%s]\n",
switch_channel_get_name((*session)->channel), switch_channel_state_name(switch_channel_get_state((*session)->channel))); switch_channel_get_name((*session)->channel), switch_channel_state_name(switch_channel_get_state((*session)->channel)));
switch_core_session_reset(*session, TRUE);
switch_core_media_bug_remove_all(*session); switch_core_media_bug_remove_all(*session);
switch_ivr_deactivate_unicast(*session); switch_ivr_deactivate_unicast(*session);
......
...@@ -115,7 +115,6 @@ static void *SWITCH_THREAD_FUNC collect_thread_run(switch_thread_t *thread, void ...@@ -115,7 +115,6 @@ static void *SWITCH_THREAD_FUNC collect_thread_run(switch_thread_t *thread, void
goto wbreak; goto wbreak;
} }
switch_channel_set_state(channel, CS_SOFT_EXECUTE);
switch_core_session_exec(collect->session, application_interface, app_data); switch_core_session_exec(collect->session, application_interface, app_data);
if (switch_channel_get_state(channel) < CS_HANGUP) { if (switch_channel_get_state(channel) < CS_HANGUP) {
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论