aboutsummaryrefslogtreecommitdiffstats
path: root/channels/sig_analog.c
diff options
context:
space:
mode:
authormnicholson <mnicholson@f38db490-d61c-443f-a65b-d21fe96a405b>2009-07-07 18:24:13 +0000
committermnicholson <mnicholson@f38db490-d61c-443f-a65b-d21fe96a405b>2009-07-07 18:24:13 +0000
commit93ac20702f5c90e088ff7329f142c2f82d36f47f (patch)
tree5da6af103ec4f905ebd577f1b96df1cf85995363 /channels/sig_analog.c
parent1f44906a3c755dc84165e70edceb85237c462061 (diff)
Fix a deadlock in sig_analog
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@205047 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'channels/sig_analog.c')
-rw-r--r--channels/sig_analog.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/channels/sig_analog.c b/channels/sig_analog.c
index 556a2443c..e397e5f4f 100644
--- a/channels/sig_analog.c
+++ b/channels/sig_analog.c
@@ -536,7 +536,7 @@ static int analog_attempt_transfer(struct analog_pvt *p)
}
/* Three-way is now the REAL */
analog_swap_subs(p, ANALOG_SUB_THREEWAY, ANALOG_SUB_REAL);
- ast_channel_unlock(p->subs[ANALOG_SUB_THREEWAY].owner);
+ ast_channel_unlock(p->subs[ANALOG_SUB_REAL].owner); /* unlock REAL because THREEWAY has become REAL */
analog_unalloc_sub(p, ANALOG_SUB_THREEWAY);
/* Tell the caller not to hangup */
return 1;