From c3a3ab8628419b1b2cf521a12f22064ab8d3c66a Mon Sep 17 00:00:00 2001 From: Kfir Itzhak <mastertheknife@gmail.com> Date: Wed, 26 Aug 2020 12:58:21 +0300 Subject: [PATCH] app_queue: Fix leave-empty not recording a call as abandoned This fixes a bug introduced mistakenly in ASTERISK-25665: If leave-empty is enabled, a call may sometimes be removed from a queue without recording it as abandoned. This causes Asterisk to not generate an abandon event for that call, and for the queue abandoned counter to be incorrect. ASTERISK-29043 #close Change-Id: I1a71b81df78adff59af587f1d8483cf57df430c7 --- apps/app_queue.c | 1 + 1 file changed, 1 insertion(+) diff --git a/apps/app_queue.c b/apps/app_queue.c index ba206eb8dc..d94a8099aa 100644 --- a/apps/app_queue.c +++ b/apps/app_queue.c @@ -5641,6 +5641,7 @@ static int wait_our_turn(struct queue_ent *qe, int ringing, enum queue_result *r int status = 0; if ((status = get_member_status(qe->parent, qe->max_penalty, qe->min_penalty, qe->raise_penalty, qe->parent->leavewhenempty, 0))) { + record_abandoned(qe); *reason = QUEUE_LEAVEEMPTY; ast_queue_log(qe->parent->name, ast_channel_uniqueid(qe->chan), "NONE", "EXITEMPTY", "%d|%d|%ld", qe->pos, qe->opos, (long) (time(NULL) - qe->start)); res = -1; -- GitLab