]> git.ipfire.org Git - thirdparty/asterisk.git/commitdiff
app_queue: Fix a bug where realtime members would be deleted during reload causing...
authorJoshua Colp <jcolp@digium.com>
Tue, 1 Apr 2014 16:52:12 +0000 (16:52 +0000)
committerJoshua Colp <jcolp@digium.com>
Tue, 1 Apr 2014 16:52:12 +0000 (16:52 +0000)
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

index 425ed89e918839132e8bb93ced726d16d4004141..5464d50fe7b34f0e53c9a65f81b99d47073051f0 100644 (file)
@@ -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;