From: Michael Jerris Date: Wed, 17 Dec 2008 17:02:46 +0000 (+0000) Subject: MODENDP-163 fix info dtmf support on some devices that do not send it properly X-Git-Tag: v1.0.2~162 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=ee5adf372997993e298977f6bccdee6e9d2e5c2f;p=thirdparty%2Ffreeswitch.git MODENDP-163 fix info dtmf support on some devices that do not send it properly git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@10852 d0543943-73ff-0310-b7d9-9358b9ac24b2 --- diff --git a/src/mod/endpoints/mod_sofia/sofia.c b/src/mod/endpoints/mod_sofia/sofia.c index cd8c684423..1468c0b78c 100644 --- a/src/mod/endpoints/mod_sofia/sofia.c +++ b/src/mod/endpoints/mod_sofia/sofia.c @@ -3516,7 +3516,7 @@ void sofia_handle_sip_i_info(nua_t *nua, sofia_profile_t *profile, nua_handle_t int tmp; /* move signal_ptr where we need it (right past Signal=) */ signal_ptr = signal_ptr + 7; - if (*signal_ptr && strlen(signal_ptr) == 1 && is_dtmf(*signal_ptr)) { + if (*signal_ptr && (*signal_ptr == '*' || *signal_ptr == '#' || *signal_ptr == 'A' || *signal_ptr == 'B' || *signal_ptr == 'C' || *signal_ptr == 'D')) { dtmf.digit = *signal_ptr; } else { tmp = atoi(signal_ptr);