Only play announce time on first pass
[asterisk/asterisk.git] / channel.c
index 1f3848a..464e15c 100755 (executable)
--- a/channel.c
+++ b/channel.c
@@ -2464,19 +2464,23 @@ int ast_channel_bridge(struct ast_channel *c0, struct ast_channel *c1, struct as
        struct ast_channel *who = NULL;
        int res=0;
        int nativefailed=0;
+       int firstpass;
        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_out||config->allowredirect_out ? AST_BRIDGE_DTMF_CHANNEL_0 : 0) + (config->allowdisconnect_in||config->allowredirect_in ? AST_BRIDGE_DTMF_CHANNEL_1 : 0);
 
+       firstpass = config->firstpass;
+       config->firstpass = 0;
+
        /* timestamp */
        gettimeofday(&start_time,NULL);
        time_left_ms = config->timelimit;
 
-       if (config->play_to_caller && config->start_sound)
+       if (config->play_to_caller && config->start_sound && firstpass)
                bridge_playfile(c0,c1,config->start_sound,time_left_ms / 1000);
-       if (config->play_to_callee && config->start_sound)
+       if (config->play_to_callee && config->start_sound && firstpass)
                bridge_playfile(c1,c0,config->start_sound,time_left_ms / 1000);
 
        /* Stop if we're a zombie or need a soft hangup */