]> git.ipfire.org Git - thirdparty/asterisk.git/commitdiff
app_queue: Fix a lock that was being held forever caused by a merging mistake
authorJonathan Rose <jrose@digium.com>
Thu, 15 Nov 2012 21:48:33 +0000 (21:48 +0000)
committerJonathan Rose <jrose@digium.com>
Thu, 15 Nov 2012 21:48:33 +0000 (21:48 +0000)
r375591 merged with conflicts and an oversight resulted in an unlock being
missed which resulted in a deadlock when updating realtime members in queues.
This patch adds that unlock back in.

(closes issue AST-1035)
Reported by: Steve Pitts
Patches:
    certified_1.8.11_oops_missed_an_unlock.diff uploaded by Jonathan Rose (license 6182)

git-svn-id: https://origsvn.digium.com/svn/asterisk/certified/branches/1.8.11@376302 65c4cc65-6c06-0410-ace0-fbb531ad65f3

apps/app_queue.c

index 7271b1509c1f9f03cc7987c45e9d629464551136..a59898b8e482550f1fd81f7ff2ba9434d24bfbbf 100644 (file)
@@ -2498,6 +2498,7 @@ static void update_realtime_members(struct call_queue *q)
                        ao2_ref(m, -1);
                }
                ast_debug(3, "Queue %s has no realtime members defined. No need for update\n", q->name);
+               ao2_unlock(q);
                return;
        }