summaryrefslogtreecommitdiff
path: root/apps/app_queue.c
diff options
context:
space:
mode:
authorMark Spencer <markster@digium.com>2004-05-30 22:10:09 +0000
committerMark Spencer <markster@digium.com>2004-05-30 22:10:09 +0000
commit89561c6a29793cec0286a765cd041c540cb0ce20 (patch)
treee5008a1a27b04a876ae5ddc7105d3db13a5aad14 /apps/app_queue.c
parentc47538a24bd2e476a6d26678a1e46b177402acc5 (diff)
Update queue member after end of call (bug #1727)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@3114 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'apps/app_queue.c')
-rwxr-xr-xapps/app_queue.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/apps/app_queue.c b/apps/app_queue.c
index 16e7d23f3..71a809e51 100755
--- a/apps/app_queue.c
+++ b/apps/app_queue.c
@@ -909,6 +909,7 @@ static int try_calling(struct queue_ent *qe, char *options, char *announceoverri
char *monitorfilename;
struct ast_channel *peer;
struct localuser *lpeer;
+ struct member *member;
int res = 0, bridge = 0;
int zapx = 2;
int x=0;
@@ -1026,7 +1027,8 @@ static int try_calling(struct queue_ent *qe, char *options, char *announceoverri
}
/* Update parameters for the queue */
recalc_holdtime(qe);
- update_queue(qe->parent, lpeer->member);
+ member = lpeer->member;
+ update_queue(qe->parent, member);
hanguptree(outgoing, peer);
outgoing = NULL;
if (announce) {
@@ -1102,7 +1104,7 @@ static int try_calling(struct queue_ent *qe, char *options, char *announceoverri
if(bridge != AST_PBX_NO_HANGUP_PEER)
ast_hangup(peer);
-
+ update_queue(qe->parent, member);
if( bridge == 0 ) res=1; /* JDG: bridge successfull, leave app_queue */
else res = bridge; /* bridge error, stay in the queue */
}