tweak socket shutdown to eliminate race
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2694 d0543943-73ff-0310-b7d9-9358b9ac24b2
This commit is contained in:
parent
8a0e9ccf1f
commit
692935bea0
|
@ -553,8 +553,11 @@ SWITCH_DECLARE(void) switch_rtp_kill_socket(switch_rtp_t *rtp_session)
|
|||
{
|
||||
assert(rtp_session != NULL);
|
||||
switch_mutex_lock(rtp_session->flag_mutex);
|
||||
apr_socket_shutdown(rtp_session->sock, APR_SHUTDOWN_READWRITE);
|
||||
switch_clear_flag(rtp_session, SWITCH_RTP_FLAG_IO);
|
||||
if (switch_test_flag(rtp_session, SWITCH_RTP_FLAG_IO)) {
|
||||
assert(rtp_session->sock != NULL);
|
||||
apr_socket_shutdown(rtp_session->sock, APR_SHUTDOWN_READWRITE);
|
||||
switch_clear_flag(rtp_session, SWITCH_RTP_FLAG_IO);
|
||||
}
|
||||
switch_mutex_unlock(rtp_session->flag_mutex);
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue