aboutsummaryrefslogtreecommitdiffstats
path: root/channel.c
diff options
context:
space:
mode:
authoranthm <anthm@f38db490-d61c-443f-a65b-d21fe96a405b>2004-04-27 16:42:43 +0000
committeranthm <anthm@f38db490-d61c-443f-a65b-d21fe96a405b>2004-04-27 16:42:43 +0000
commit5897660860459018e08d2b3416a6087147515996 (patch)
tree3192ce907de41537f8a32ec8a6ce7b5e3a069f0f /channel.c
parent4ea8b09a2a0fdd5e73b1083bbef816eefd269a2a (diff)
Bug Fix
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@2784 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'channel.c')
-rwxr-xr-xchannel.c10
1 files changed, 6 insertions, 4 deletions
diff --git a/channel.c b/channel.c
index 9a083fd36..0ea7f7430 100755
--- a/channel.c
+++ b/channel.c
@@ -2335,7 +2335,7 @@ static long tvdiff(struct timeval *now,struct timeval *then) {
return (((now->tv_sec * 1000) + now->tv_usec / 1000) - ((then->tv_sec * 1000) + then->tv_usec / 1000));
}
-static void bridge_playfile(struct ast_channel *chan,char *sound,int remain) {
+static void bridge_playfile(struct ast_channel *chan,char *sound,int remain) {
int res=0,min=0,sec=0;
if(remain > 0) {
@@ -2381,7 +2381,7 @@ int ast_channel_bridge(struct ast_channel *c0,struct ast_channel *c1,struct ast_
struct timeval start_time,precise_now;
long elapsed_ms=0,time_left_ms=0;
int playit=0,playitagain=1,first_time=1;
-
+
flags = (config->allowdisconnect||config->allowredirect_out ? AST_BRIDGE_DTMF_CHANNEL_0 : 0) + (config->allowredirect_in ? AST_BRIDGE_DTMF_CHANNEL_1 : 0);
@@ -2450,7 +2450,6 @@ int ast_channel_bridge(struct ast_channel *c0,struct ast_channel *c1,struct ast_
}
}
}
-
if(time_left_ms <= 0) {
if(config->play_to_caller && config->end_sound){
bridge_playfile(c0,config->end_sound,0);
@@ -2458,7 +2457,10 @@ int ast_channel_bridge(struct ast_channel *c0,struct ast_channel *c1,struct ast_
if(config->play_to_callee && config->end_sound){
bridge_playfile(c1,config->end_sound,0);
- }
+ }
+ *fo = NULL;
+ if (who) *rc = who;
+ res = 0;
break;
}