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/


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@411584 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
Joshua Colp
2014-04-01 16:48:55 +00:00
parent dd5c0ffd4d
commit 6f85424652

View File

@@ -6952,7 +6952,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;