diff options
Diffstat (limited to 'main/pickup.c')
-rw-r--r-- | main/pickup.c | 10 |
1 files changed, 2 insertions, 8 deletions
diff --git a/main/pickup.c b/main/pickup.c index a415f1672..7ae6927fa 100644 --- a/main/pickup.c +++ b/main/pickup.c @@ -354,17 +354,11 @@ int ast_do_pickup(struct ast_channel *chan, struct ast_channel *target) /* setting the HANGUPCAUSE so the ringing channel knows this call was not a missed call */ ast_channel_hangupcause_set(chan, AST_CAUSE_ANSWERED_ELSEWHERE); - ast_channel_lock(chan); - chan_snapshot = ast_channel_snapshot_create(chan); - ast_channel_unlock(chan); - if (!chan_snapshot) { + if (!(chan_snapshot = ast_channel_snapshot_create(chan))) { goto pickup_failed; } - ast_channel_lock(target); - target_snapshot = ast_channel_snapshot_create(target); - ast_channel_unlock(target); - if (!target_snapshot) { + if (!(target_snapshot = ast_channel_snapshot_create(target))) { goto pickup_failed; } |