]> git.ipfire.org Git - thirdparty/freeswitch.git/commitdiff
FS-10405: [core] Fix Timer destroy error on one legged calls
authorMike Jerris <mike@jerris.com>
Mon, 19 Jun 2017 17:57:31 +0000 (13:57 -0400)
committerMike Jerris <mike@jerris.com>
Mon, 19 Jun 2017 17:57:31 +0000 (13:57 -0400)
src/switch_rtp.c

index eda38057285a0d8002960024776f59fbda8a004b..a21bab2c5ba6b0a98b19179469a272a57cb6ce69 100644 (file)
@@ -3973,8 +3973,12 @@ SWITCH_DECLARE(switch_status_t) switch_rtp_change_interval(switch_rtp_t *rtp_ses
 
                if (rtp_session->timer.timer_interface) {
                        switch_core_timer_destroy(&rtp_session->timer);
+               }
+
+               if (rtp_session->write_timer.timer_interface) {
                        switch_core_timer_destroy(&rtp_session->write_timer);
                }
+
                if ((status = switch_core_timer_init(&rtp_session->timer,
                                                                                         rtp_session->timer_name, ms_per_packet / 1000,
                                                                                         samples_per_interval, rtp_session->pool)) == SWITCH_STATUS_SUCCESS) {
@@ -4912,6 +4916,9 @@ SWITCH_DECLARE(void) switch_rtp_destroy(switch_rtp_t **rtp_session)
 #endif
        if ((*rtp_session)->timer.timer_interface) {
                switch_core_timer_destroy(&(*rtp_session)->timer);
+       }
+
+       if ((*rtp_session)->timer.timer_interface) {
                switch_core_timer_destroy(&(*rtp_session)->write_timer);
        }