]> git.ipfire.org Git - thirdparty/freeswitch.git/commitdiff
Make sure the received DTMF duration is initialsed at the beginning, and if the realt...
authorSteve Underwood <steveu@coppice.org>
Thu, 8 Dec 2011 16:19:01 +0000 (00:19 +0800)
committerSteve Underwood <steveu@coppice.org>
Thu, 8 Dec 2011 16:19:01 +0000 (00:19 +0800)
libs/spandsp/src/dtmf.c

index 18a8b184202801f37a93a6dbcdb12a2e9ec3e0af..a0321c2030b996bc8e978114b66db33049457c34 100644 (file)
@@ -346,6 +346,7 @@ SPAN_DECLARE(void) dtmf_rx_set_realtime_callback(dtmf_rx_state_t *s,
 {
     s->realtime_callback = callback;
     s->realtime_callback_data = user_data;
+    s->duration = 0;
 }
 /*- End of function --------------------------------------------------------*/
 
@@ -395,6 +396,7 @@ SPAN_DECLARE(dtmf_rx_state_t *) dtmf_rx_init(dtmf_rx_state_t *s,
         if ((s = (dtmf_rx_state_t *) malloc(sizeof (*s))) == NULL)
             return  NULL;
     }
+    memset(s, 0, sizeof(*s));
     span_log_init(&s->logging, SPAN_LOG_NONE, NULL);
     span_log_set_protocol(&s->logging, "DTMF");
     s->digits_callback = callback;
@@ -547,6 +549,7 @@ SPAN_DECLARE(dtmf_tx_state_t *) dtmf_tx_init(dtmf_tx_state_t *s)
         if ((s = (dtmf_tx_state_t *) malloc(sizeof (*s))) == NULL)
             return  NULL;
     }
+    memset(s, 0, sizeof(*s));
     if (!dtmf_tx_inited)
         dtmf_tx_initialise();
     tone_gen_init(&(s->tones), &dtmf_digit_tones[0]);