diff options
author | Mark Spencer <markster@digium.com> | 2005-10-13 18:27:54 +0000 |
---|---|---|
committer | Mark Spencer <markster@digium.com> | 2005-10-13 18:27:54 +0000 |
commit | dd11afca4229c2d5746d19d86f0ca960d71fe935 (patch) | |
tree | b5afd966e15542b9db79d321c8bae141fe961d5f /channels/chan_zap.c | |
parent | 6fea13619ef22fc2d2c2bef6d6a9a27867a5a2b4 (diff) |
Fix call timeouts with rtp bridge etc (bug #5252)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@6759 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'channels/chan_zap.c')
-rwxr-xr-x | channels/chan_zap.c | 8 |
1 files changed, 3 insertions, 5 deletions
diff --git a/channels/chan_zap.c b/channels/chan_zap.c index c8ab2473b..077eba2f6 100755 --- a/channels/chan_zap.c +++ b/channels/chan_zap.c @@ -340,7 +340,7 @@ static pthread_t monitor_thread = AST_PTHREADT_NULL; static int restart_monitor(void); -static enum ast_bridge_result zt_bridge(struct ast_channel *c0, struct ast_channel *c1, int flags, struct ast_frame **fo, struct ast_channel **rc); +static enum ast_bridge_result zt_bridge(struct ast_channel *c0, struct ast_channel *c1, int flags, struct ast_frame **fo, struct ast_channel **rc, int timeoutms); static int zt_sendtext(struct ast_channel *c, const char *text); @@ -2940,13 +2940,12 @@ static void enable_dtmf_detect(struct zt_pvt *p) #endif } -static enum ast_bridge_result zt_bridge(struct ast_channel *c0, struct ast_channel *c1, int flags, struct ast_frame **fo, struct ast_channel **rc) +static enum ast_bridge_result zt_bridge(struct ast_channel *c0, struct ast_channel *c1, int flags, struct ast_frame **fo, struct ast_channel **rc, int timeoutms) { struct ast_channel *who; struct zt_pvt *p0, *p1, *op0, *op1; struct zt_pvt *master = NULL, *slave = NULL; struct ast_frame *f; - int to; int inconf = 0; int nothingok = 1; int ofd0, ofd1; @@ -3169,8 +3168,7 @@ static enum ast_bridge_result zt_bridge(struct ast_channel *c0, struct ast_chann } #endif - to = -1; - who = ast_waitfor_n(priority ? c0_priority : c1_priority, 2, &to); + who = ast_waitfor_n(priority ? c0_priority : c1_priority, 2, &timeoutms); if (!who) { ast_log(LOG_DEBUG, "Ooh, empty read...\n"); continue; |