mirror of
https://github.com/signalwire/freeswitch.git
synced 2025-04-19 17:57:22 +00:00
only flush on break when its a blocking situation
This commit is contained in:
parent
0c715f1286
commit
3a0767865d
@ -3097,9 +3097,12 @@ static int rtp_common_read(switch_rtp_t *rtp_session, switch_payload_t *payload_
|
|||||||
|
|
||||||
if (switch_test_flag(rtp_session, SWITCH_RTP_FLAG_BREAK) || (bytes && bytes == 4 && *((int *) &rtp_session->recv_msg) == UINT_MAX)) {
|
if (switch_test_flag(rtp_session, SWITCH_RTP_FLAG_BREAK) || (bytes && bytes == 4 && *((int *) &rtp_session->recv_msg) == UINT_MAX)) {
|
||||||
switch_clear_flag_locked(rtp_session, SWITCH_RTP_FLAG_BREAK);
|
switch_clear_flag_locked(rtp_session, SWITCH_RTP_FLAG_BREAK);
|
||||||
do_2833(rtp_session, session);
|
|
||||||
bytes = 0;
|
if (!switch_test_flag(rtp_session, SWITCH_RTP_FLAG_NOBLOCK) || switch_test_flag(rtp_session, SWITCH_RTP_FLAG_PROXY_MEDIA) || switch_test_flag(rtp_session, SWITCH_RTP_FLAG_UDPTL) || (bytes && bytes < 5) || (!bytes && poll_loop)) {
|
||||||
return_cng_frame();
|
do_2833(rtp_session, session);
|
||||||
|
bytes = 0;
|
||||||
|
return_cng_frame();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (switch_test_flag(rtp_session, SWITCH_RTP_FLAG_FLUSH)) {
|
if (switch_test_flag(rtp_session, SWITCH_RTP_FLAG_FLUSH)) {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user