]> git.ipfire.org Git - thirdparty/freeswitch.git/commitdiff
reset rtp media timer when we get a reinvite
authorAnthony Minessale <anthony.minessale@gmail.com>
Tue, 13 Jan 2009 19:02:48 +0000 (19:02 +0000)
committerAnthony Minessale <anthony.minessale@gmail.com>
Tue, 13 Jan 2009 19:02:48 +0000 (19:02 +0000)
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@11161 d0543943-73ff-0310-b7d9-9358b9ac24b2

src/include/switch_rtp.h
src/mod/endpoints/mod_sofia/sofia_glue.c
src/switch_rtp.c

index 9ead7de83aa194937580a7cb2e884176c5c4d5c7..288c15f8e603af22e1ae34bca7eb0cd5927cdb7b 100644 (file)
@@ -168,7 +168,7 @@ SWITCH_DECLARE(switch_status_t) switch_rtp_set_remote_address(switch_rtp_t *rtp_
 
 SWITCH_DECLARE(char *) switch_rtp_get_remote_host(switch_rtp_t *rtp_session);
 SWITCH_DECLARE(switch_port_t) switch_rtp_get_remote_port(switch_rtp_t *rtp_session);
-
+SWITCH_DECLARE(void) switch_rtp_reset_media_timer(switch_rtp_t *rtp_session);
 SWITCH_DECLARE(void) switch_rtp_set_max_missed_packets(switch_rtp_t *rtp_session, uint32_t max);
 
 /*! 
index 617558995772f6af6b7d79d17493518126b0ca2f..7921da58190d216cb23ff6b7490ac33c7a1b4477 100644 (file)
@@ -1817,6 +1817,10 @@ switch_status_t sofia_glue_activate_rtp(private_object_t *tech_pvt, switch_rtp_f
        switch_assert(tech_pvt != NULL);
        switch_mutex_lock(tech_pvt->sofia_mutex);
 
+       if (switch_rtp_ready(tech_pvt->rtp_session)) {
+               switch_rtp_reset_media_timer(tech_pvt->rtp_session);
+       }
+
        if ((var = switch_channel_get_variable(tech_pvt->channel, SOFIA_SECURE_MEDIA_VARIABLE)) && switch_true(var)) {
                switch_set_flag_locked(tech_pvt, TFLAG_SECURE);
        }
index 18603a98704a4e13df100b6212a1fe61f90a8eaa..80910865fd59fae419d96eb5deaa2818d7f87889 100644 (file)
@@ -608,6 +608,11 @@ SWITCH_DECLARE(void) switch_rtp_set_max_missed_packets(switch_rtp_t *rtp_session
        rtp_session->max_missed_packets = max;
 }
 
+SWITCH_DECLARE(void) switch_rtp_reset_media_timer(switch_rtp_t *rtp_session)
+{
+       rtp_session->missed_count = 0;
+}
+
 SWITCH_DECLARE(char *) switch_rtp_get_remote_host(switch_rtp_t *rtp_session)
 {
        return switch_strlen_zero(rtp_session->remote_host_str) ? "0.0.0.0" : rtp_session->remote_host_str;