diff --git a/apps/app_queue.c b/apps/app_queue.c index b01780e0e84d653798730641c0459e25d864fc38..b9afc6ac2a1b00b57f1f7e8bf1f0b3283d68ebc3 100755 --- a/apps/app_queue.c +++ b/apps/app_queue.c @@ -892,7 +892,7 @@ static int valid_exit(struct queue_ent *qe, char digit) #define AST_MAX_WATCHERS 256 -static struct localuser *wait_for_answer(struct queue_ent *qe, struct localuser *outgoing, int *to, struct localuser *flags, char *digit) +static struct localuser *wait_for_answer(struct queue_ent *qe, struct localuser *outgoing, int *to, struct ast_flags *flags, char *digit) { char *queue = qe->parent->name; struct localuser *o; @@ -1247,7 +1247,7 @@ static int try_calling(struct queue_ent *qe, char *options, char *announceoverri struct member *cur; struct localuser *outgoing=NULL, *tmp = NULL; int to; - struct localuser flags_dummy; + struct ast_flags flags; char restofit[AST_MAX_EXTENSION]; char oldexten[AST_MAX_EXTENSION]=""; char oldcontext[AST_MAX_EXTENSION]=""; @@ -1354,7 +1354,7 @@ static int try_calling(struct queue_ent *qe, char *options, char *announceoverri to = -1; ring_one(qe, outgoing); ast_mutex_unlock(&qe->parent->lock); - lpeer = wait_for_answer(qe, outgoing, &to, &flags_dummy, &digit); + lpeer = wait_for_answer(qe, outgoing, &to, &flags, &digit); ast_mutex_lock(&qe->parent->lock); if (qe->parent->strategy == QUEUE_STRATEGY_RRMEMORY) { store_next(qe, outgoing); @@ -1473,10 +1473,10 @@ static int try_calling(struct queue_ent *qe, char *options, char *announceoverri time(&callstart); memset(&config,0,sizeof(struct ast_bridge_config)); - config.allowredirect_in = ast_test_flag(&flags_dummy, QUEUE_FLAG_REDIR_IN); - config.allowredirect_out = ast_test_flag(&flags_dummy, QUEUE_FLAG_REDIR_OUT); - config.allowdisconnect_in = ast_test_flag(&flags_dummy, QUEUE_FLAG_DISCON_IN); - config.allowdisconnect_out = ast_test_flag(&flags_dummy, QUEUE_FLAG_DISCON_OUT); + config.allowredirect_in = ast_test_flag(&flags, QUEUE_FLAG_REDIR_IN); + config.allowredirect_out = ast_test_flag(&flags, QUEUE_FLAG_REDIR_OUT); + config.allowdisconnect_in = ast_test_flag(&flags, QUEUE_FLAG_DISCON_IN); + config.allowdisconnect_out = ast_test_flag(&flags, QUEUE_FLAG_DISCON_OUT); bridge = ast_bridge_call(qe->chan,peer,&config); if (strcasecmp(oldcontext, qe->chan->context) || strcasecmp(oldexten, qe->chan->exten)) {