]> git.ipfire.org Git - thirdparty/freeswitch.git/commitdiff
FS-4978 --resolve this is fine besides one minor change to only consider this path...
authorAnthony Minessale <anthm@freeswitch.org>
Mon, 7 Jan 2013 17:14:51 +0000 (11:14 -0600)
committerAnthony Minessale <anthm@freeswitch.org>
Mon, 7 Jan 2013 17:14:51 +0000 (11:14 -0600)
src/mod/endpoints/mod_sofia/sofia.c

index 8f11f4a191f01f2d58b08607e91a0ccdccbc429d..e26023418af25b6242596cbafbdbb82c84a910c8 100644 (file)
@@ -5152,7 +5152,11 @@ static void sofia_handle_sip_r_invite(switch_core_session_t *session, int status
                                        
                                        switch_log_printf(SWITCH_CHANNEL_SESSION_LOG(session), SWITCH_LOG_DEBUG, "Passing %d %s to other leg\n", status, phrase);
 
-                                       if (status > 299) {
+                                       if (status == 491 && sofia_test_flag(tech_pvt, TFLAG_T38_PASSTHRU)) {
+                                               nua_respond(other_tech_pvt->nh, SIP_491_REQUEST_PENDING, TAG_END());
+                                               switch_core_session_rwunlock(other_session);
+                                               goto end;
+                                       } else if (status > 299) {
                                                switch_channel_set_private(channel, "t38_options", NULL);
                                                switch_channel_set_private(other_channel, "t38_options", NULL);
                                                sofia_clear_flag(tech_pvt, TFLAG_T38_PASSTHRU);