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; } -- _____________________________________________________________________ -- Bandwidth and Colocation Provided by http://www.api-digital.com -- svn-commits mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/svn-commits
