Skip to content
Snippets Groups Projects
Commit 2cf50792 authored by Jasper Hafkenscheid's avatar Jasper Hafkenscheid Committed by Richard Mudgett
Browse files

chan_sip: Attempt ast_do_pickup in handle_invite_replaces

When a call pickup is performed using and invite with replaces header
the ast_do_pickup method is attempted and a PICKUP stasis message is sent.

ASTERISK-28081 #close
Reported-by: Luit van Drongelen

Change-Id: Ieb1442027a3ce6ae55faca47bc095e53972f947a
parent 7ece4af5
No related branches found
No related tags found
No related merge requests found
......@@ -25903,7 +25903,13 @@ static int handle_invite_replaces(struct sip_pvt *p, struct sip_request *req,
}
ao2_ref(bridge, -1);
} else {
ast_channel_move(replaces_chan, c);
int pickedup;
ast_channel_lock(replaces_chan);
pickedup = ast_can_pickup(replaces_chan) && !ast_do_pickup(c, replaces_chan);
ast_channel_unlock(replaces_chan);
if (!pickedup) {
ast_channel_move(replaces_chan, c);
}
ast_hangup(c);
}
ast_channel_unref(c);
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment