[commit] r7277 - in freeswitch/trunk/src: . mod/endpoints/mod_sofia
Author: anthm Date: Thu Jan 17 19:10:23 2008 New Revision: 7277 Modified: freeswitch/trunk/src/mod/endpoints/mod_sofia/sofia.c freeswitch/trunk/src/switch_rtp.c Log: refactor Modified: freeswitch/trunk/src/mod/endpoints/mod_sofia/sofia.c ============================================================================== --- freeswitch/trunk/src/mod/endpoints/mod_sofia/sofia.c (original) +++ freeswitch/trunk/src/mod/endpoints/mod_sofia/sofia.c Thu Jan 17 19:10:23 2008 @@ -2453,7 +2453,7 @@ } else { const char *url = (sofia_glue_transport_has_tls(transport)) ? profile->tls_url : profile->url; - if (strchr(url, '>')) { + if (url && strchr(url, '>')) { tech_pvt->reply_contact = switch_core_session_sprintf(session, "%s;transport=%s", url, sofia_glue_transport2str(transport)); } else { tech_pvt->reply_contact = switch_core_session_sprintf(session, "<%s;transport=%s>", url, sofia_glue_transport2str(transport)); Modified: freeswitch/trunk/src/switch_rtp.c ============================================================================== --- freeswitch/trunk/src/switch_rtp.c (original) +++ freeswitch/trunk/src/switch_rtp.c Thu Jan 17 19:10:23 2008 @@ -770,6 +770,7 @@ SWITCH_DECLARE(void) switch_rtp_destroy(switch_rtp_t **rtp_session) { void *pop; + switch_socket_t *sock; if (!switch_rtp_ready(*rtp_session)) { return; @@ -792,8 +793,10 @@ } switch_rtp_kill_socket(*rtp_session); - switch_socket_close((*rtp_session)->sock); + sock = (*rtp_session)->sock; (*rtp_session)->sock = NULL; + switch_socket_close(sock); + if (switch_test_flag((*rtp_session), SWITCH_RTP_FLAG_VAD)) { @@ -1088,7 +1091,9 @@ switch_frame_flag_t frame_flags = SFF_NONE; data[0] = 65; rtp_session->cn++; + switch_mutex_lock(rtp_session->flag_mutex); rtp_common_write(rtp_session, NULL, (void *) data, 2, rtp_session->cng_pt, 0, &frame_flags); + switch_mutex_unlock(rtp_session->flag_mutex); } } @@ -1601,7 +1606,7 @@ this_ts = ntohl(send_msg->header.ts); - if (rtp_session->sending_dtmf || !this_ts) { + if (!switch_rtp_ready(rtp_session) || rtp_session->sending_dtmf || !this_ts) { send = 0; }
participants (1)
-
Freeswitch SVN