]> git.ipfire.org Git - thirdparty/freeswitch.git/commitdiff
FS-10913: [mod_sofia] do not mark pre_answer unless status is less than 200
authorBrian West <brian@freeswitch.org>
Mon, 21 Jan 2019 15:34:33 +0000 (09:34 -0600)
committerAndrey Volk <andywolk@gmail.com>
Tue, 16 Jul 2019 21:49:13 +0000 (01:49 +0400)
src/mod/endpoints/mod_sofia/sofia.c

index 739a7d707871de40dfabeaae61366e1127b830c1..24c5a2d74957ffbddd66a2acbd18a6ed41294582 100644 (file)
@@ -7332,7 +7332,7 @@ static void sofia_handle_sip_i_state(switch_core_session_t *session, int status,
                        } else {
                                switch_log_printf(SWITCH_CHANNEL_SESSION_LOG(session), SWITCH_LOG_DEBUG, "Remote SDP:\n%s\n", r_sdp);
                                tech_pvt->mparams.remote_sdp_str = switch_core_session_strdup(session, r_sdp);
-                               if (switch_channel_direction(channel) == SWITCH_CALL_DIRECTION_OUTBOUND) {
+                               if (switch_channel_direction(channel) == SWITCH_CALL_DIRECTION_OUTBOUND && status < 200) {
                                        switch_channel_mark_pre_answered(channel);
                                }
                 //if ((sofia_test_flag(tech_pvt, TFLAG_LATE_NEGOTIATION) || switch_channel_direction(channel) == SWITCH_CALL_DIRECTION_OUTBOUND)) {