[asterisk-commits] kmoore: trunk r396385 - /trunk/main/bridge.c
SVN commits to the Asterisk project
asterisk-commits at lists.digium.com
Thu Aug 8 07:38:15 CDT 2013
Author: kmoore
Date: Thu Aug 8 07:38:06 2013
New Revision: 396385
URL: http://svnview.digium.com/svn/asterisk?view=rev&rev=396385
Log:
Prevent unreal channels from optimizing during DTMF emulation
This prevents unreal channel optimization during the prequalification
phase when either channel is involved in DTMF emulation. This prevents
a situation where an emulated digit would be missed because the
emulation was never completed.
Review: https://reviewboard.asterisk.org/r/2747/
(closes issue ASTERISK-22214)
Modified:
trunk/main/bridge.c
Modified: trunk/main/bridge.c
URL: http://svnview.digium.com/svn/asterisk/trunk/main/bridge.c?view=diff&rev=396385&r1=396384&r2=396385
==============================================================================
--- trunk/main/bridge.c (original)
+++ trunk/main/bridge.c Thu Aug 8 07:38:06 2013
@@ -2198,6 +2198,9 @@
if (!AST_LIST_EMPTY(ast_channel_readq(chan))) {
return NULL;
}
+ if (ast_test_flag(ast_channel_flags(chan), AST_FLAG_EMULATE_DTMF)) {
+ return NULL;
+ }
if (ast_channel_has_audio_frame_or_monitor(chan)) {
/* Channel has an active monitor, audiohook, or framehook. */
return NULL;
@@ -2241,6 +2244,10 @@
return NULL;
}
if (!AST_LIST_EMPTY(ast_channel_readq(peer))) {
+ ast_channel_unlock(peer);
+ return NULL;
+ }
+ if (ast_test_flag(ast_channel_flags(peer), AST_FLAG_EMULATE_DTMF)) {
ast_channel_unlock(peer);
return NULL;
}
More information about the asterisk-commits
mailing list