git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@7805 d0543943-73ff-0310-b7d9-9358b9ac24b2
This commit is contained in:
Anthony Minessale 2008-03-07 00:34:26 +00:00
parent 86729b7ff8
commit 4af04f8205
2 changed files with 9 additions and 3 deletions

View File

@ -1427,7 +1427,9 @@ static void sofia_handle_sip_r_invite(switch_core_session_t *session, int status
msg.pointer_arg = switch_core_session_strdup(other_session, r_sdp); msg.pointer_arg = switch_core_session_strdup(other_session, r_sdp);
msg.pointer_arg_size = strlen(r_sdp); msg.pointer_arg_size = strlen(r_sdp);
} }
switch_core_session_receive_message(other_session, &msg); if (switch_core_session_receive_message(other_session, &msg) != SWITCH_STATUS_SUCCESS) {
nua_respond(tech_pvt->nh, 488, "Hangup in progress", TAG_END());
}
switch_core_session_rwunlock(other_session); switch_core_session_rwunlock(other_session);
} }
return; return;
@ -1768,10 +1770,13 @@ static void sofia_handle_sip_i_state(switch_core_session_t *session, int status,
msg.from = __FILE__; msg.from = __FILE__;
msg.string_arg = (char *) r_sdp; msg.string_arg = (char *) r_sdp;
switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "Passing SDP to other leg.\n%s\n", r_sdp); switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "Passing SDP to other leg.\n%s\n", r_sdp);
switch_core_session_receive_message(other_session, &msg); if (switch_core_session_receive_message(other_session, &msg) != SWITCH_STATUS_SUCCESS) {
nua_respond(tech_pvt->nh, 488, "Hangup in progress", TAG_END());
}
switch_core_session_rwunlock(other_session); switch_core_session_rwunlock(other_session);
} else { } else {
switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_WARNING, "Re-INVITE to a no-media channel that is not in a bridge.\n"); switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_WARNING, "Re-INVITE to a no-media channel that is not in a bridge.\n");
switch_channel_hangup(channel, SWITCH_CAUSE_DESTINATION_OUT_OF_ORDER);
} }
goto done; goto done;
} else { } else {

View File

@ -777,7 +777,8 @@ void sofia_glue_tech_patch_sdp(private_object_t *tech_pvt)
} }
if (!(ip_ptr && port_ptr)) { if (!(ip_ptr && port_ptr)) {
switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_ERROR, "%s SDP Error! [%s]\n", switch_channel_get_name(tech_pvt->channel), tech_pvt->local_sdp_str); switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "%s SDP has no audio in it.\n%s\n",
switch_channel_get_name(tech_pvt->channel), tech_pvt->local_sdp_str);
return; return;
} }