[Freeswitch-svn] [commit] r5021 - freeswitch/trunk/src
Freeswitch SVN
anthm at freeswitch.org
Thu Apr 26 17:57:51 EDT 2007
Author: anthm
Date: Thu Apr 26 17:57:50 2007
New Revision: 5021
Modified:
freeswitch/trunk/src/switch_rtp.c
Log:
fix rfc2833 bs
Modified: freeswitch/trunk/src/switch_rtp.c
==============================================================================
--- freeswitch/trunk/src/switch_rtp.c (original)
+++ freeswitch/trunk/src/switch_rtp.c Thu Apr 26 17:57:50 2007
@@ -967,6 +967,7 @@
char key = switch_rfc2833_to_char(packet[0]);
uint16_t in_digit_seq = ntohs((uint16_t) rtp_session->recv_msg.header.seq);
+
/* SHEESH.... Curse you RFC2833 inventors!!!! */
if ((time(NULL) - rtp_session->dtmf_data.last_digit_time) > 2) {
rtp_session->dtmf_data.last_digit = 0;
@@ -974,12 +975,12 @@
}
if (in_digit_seq > rtp_session->dtmf_data.in_digit_seq) {
rtp_session->dtmf_data.in_digit_seq = in_digit_seq;
-
if (duration && end) {
if (key != rtp_session->dtmf_data.last_digit) {
char digit_str[] = { key, 0 };
time(&rtp_session->dtmf_data.last_digit_time);
switch_rtp_queue_dtmf(rtp_session, digit_str);
+ switch_set_flag_locked(rtp_session, SWITCH_RTP_FLAG_BREAK);
}
if (++rtp_session->dtmf_data.dc >= 3) {
rtp_session->dtmf_data.last_digit = 0;
More information about the Freeswitch-svn
mailing list