diff options
author | Alec Davis <sivad.a@paradise.net.nz> | 2015-11-16 23:29:25 +1300 |
---|---|---|
committer | Mark Michelson <mmichelson@digium.com> | 2015-11-16 13:23:05 -0600 |
commit | 7debb986a51937886392f7f444f29483528f94ec (patch) | |
tree | 26350379e66c538bbf3c4f01a6338c6ea8c3b8de | |
parent | afd9a89e5a0ed041d576afa1f387000404ed3c4d (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 6dfb14356..5a8dcd246 100644 --- a/apps/app_queue.c +++ b/apps/app_queue.c @@ -6500,7 +6500,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); |