From: Anthony Minessale Date: Wed, 18 Feb 2009 21:50:33 +0000 (+0000) Subject: fix race in event socket X-Git-Tag: v1.0.3~15 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=b09a12c94a91459e20ba4bca2051d090e684b59f;p=thirdparty%2Ffreeswitch.git fix race in event socket git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@12146 d0543943-73ff-0310-b7d9-9358b9ac24b2 --- diff --git a/src/mod/event_handlers/mod_event_socket/mod_event_socket.c b/src/mod/event_handlers/mod_event_socket/mod_event_socket.c index 15fb9e0e8e..09b6e18a0c 100644 --- a/src/mod/event_handlers/mod_event_socket/mod_event_socket.c +++ b/src/mod/event_handlers/mod_event_socket/mod_event_socket.c @@ -1159,7 +1159,7 @@ static switch_status_t read_packet(listener_t *listener, switch_event_t **event, } } - if (channel && !switch_channel_ready(channel) && !switch_test_flag(listener, LFLAG_HANDLE_DISCO)) { + if (channel && switch_channel_get_state(channel) >= CS_HANGUP && !switch_test_flag(listener, LFLAG_HANDLE_DISCO)) { switch_set_flag_locked(listener, LFLAG_HANDLE_DISCO); if (switch_test_flag(listener, LFLAG_LINGER)) { char message[128] = "";