fix a leaked channel lock (and future deadlock) when we try to pick up our own channel
authorBrian Degenhardt <bmd@digium.com>
Tue, 3 Mar 2009 20:02:20 +0000 (20:02 +0000)
committerBrian Degenhardt <bmd@digium.com>
Tue, 3 Mar 2009 20:02:20 +0000 (20:02 +0000)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@179903 65c4cc65-6c06-0410-ace0-fbb531ad65f3

apps/app_directed_pickup.c

index 6409113..605d11f 100644 (file)
@@ -163,8 +163,8 @@ static int pickup_by_channel(struct ast_channel *chan, char *pickup)
        /* Just check that we are not picking up the SAME as target */
        if (chan->name != target->name && chan != target) {
                res = pickup_do(chan, target);
-               ast_channel_unlock(target);
        }
+       ast_channel_unlock(target);
 
        return res;
 }