summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-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;