diff options
author | Alec Davis <sivad.a@paradise.net.nz> | 2015-11-18 19:20:22 +1300 |
---|---|---|
committer | Alec Davis <sivad.a@paradise.net.nz> | 2015-11-18 19:21:54 +1300 |
commit | 4013f9d5777e2e3048aab8108ba51cb2f963ff0b (patch) | |
tree | e614f9febf5fd359f2d46696c1283ab70af1b6d2 | |
parent | f57da2ae908e490d85bbe1dc0284c629bfcd4f97 (diff) |
app_queue: (try_calling): mutex 'qe->chan' freed more times than we've locked!
commit aae45acbd (Mark Michelson 2015-04-15 10:38:02 -0500 6525)
refer ASTERISK-24958
above commit removed ast_channel_lock(qe->chan);
but failed to remove corresponding ast_channel_unlock(qe->chan);
ASTERISK-25561 #close
Reported Alec Davis
Change-Id: Ie05f4e2d08912606178bf1fded57cc022c7a2e1a
-rw-r--r-- | apps/app_queue.c | 1 |
1 files changed, 0 insertions, 1 deletions
diff --git a/apps/app_queue.c b/apps/app_queue.c index 862988b7c..234543f75 100644 --- a/apps/app_queue.c +++ b/apps/app_queue.c @@ -6523,7 +6523,6 @@ static int try_calling(struct queue_ent *qe, struct ast_flags opts, char **opt_a ast_test_flag(&(bridge_config.features_caller), AST_FEATURE_DISCONNECT), forwardsallowed, ringing); - ast_channel_unlock(qe->chan); ao2_lock(qe->parent); if (qe->parent->strategy == QUEUE_STRATEGY_RRMEMORY || qe->parent->strategy == QUEUE_STRATEGY_RRORDERED) { store_next_rr(qe, outgoing); |