From c7b8633c26a4be0ce51960ac61df7d601f104e1f Mon Sep 17 00:00:00 2001 From: Joshua Colp <jcolp@digium.com> Date: Tue, 1 Apr 2014 16:52:12 +0000 Subject: [PATCH] app_queue: Fix a bug where realtime members would be deleted during reload causing waiting callers to get ejected. This patch causes realtime queue members to remain in queues during the reload process. Previously these members would be removed causing any waiting callers to be ejected from the queue with a reason of "EXITEMPTY". ASTERISK-23547 #close ASTERISK-23547 #comment Patch app_queue_fix_realtime_reload_1.8_trunk.patch submitted by Italo Rossi (license 6409) Review: https://reviewboard.asterisk.org/r/3404/ ........ Merged revisions 411584 from http://svn.asterisk.org/svn/asterisk/branches/1.8 ........ Merged revisions 411585 from http://svn.asterisk.org/svn/asterisk/branches/11 ........ Merged revisions 411586 from http://svn.asterisk.org/svn/asterisk/branches/12 git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@411587 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- apps/app_queue.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/app_queue.c b/apps/app_queue.c index 425ed89e91..5464d50fe7 100644 --- a/apps/app_queue.c +++ b/apps/app_queue.c @@ -8537,7 +8537,7 @@ static void reload_single_member(const char *memberdata, struct call_queue *q) static int mark_member_dead(void *obj, void *arg, int flags) { struct member *member = obj; - if (!member->dynamic) { + if (!member->dynamic && !member->realtime) { member->delme = 1; } return 0; -- GitLab