mirror of
https://github.com/asterisk/asterisk.git
synced 2025-11-07 02:18:15 +00:00
Merged revisions 155467 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk ........ r155467 | mmichelson | 2008-11-07 17:41:44 -0600 (Fri, 07 Nov 2008) | 12 lines Set the invite state to INV_CANCELLED in a place that makes more sense. Where it was set before, it was impossible to actually delay sending a CANCEL if we had not yet received a provisional response to an INVITE. (closes issue #13626) Reported by: atis Patches: 13626.patch uploaded by putnopvut (license 60) Tested by: atis ........ git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@155469 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
@@ -5057,7 +5057,6 @@ static int sip_hangup(struct ast_channel *ast)
|
||||
if (ast_test_flag(&p->flags[0], SIP_OUTGOING)) {
|
||||
/* stop retransmitting an INVITE that has not received a response */
|
||||
__sip_pretend_ack(p);
|
||||
p->invitestate = INV_CANCELLED;
|
||||
|
||||
/* if we can't send right now, mark it pending */
|
||||
if (p->invitestate == INV_CALLING) {
|
||||
@@ -5067,6 +5066,7 @@ static int sip_hangup(struct ast_channel *ast)
|
||||
sip_scheddestroy(p, DEFAULT_TRANS_TIMEOUT);
|
||||
append_history(p, "DELAY", "Not sending cancel, waiting for timeout");
|
||||
} else {
|
||||
p->invitestate = INV_CANCELLED;
|
||||
/* Send a new request: CANCEL */
|
||||
transmit_request(p, SIP_CANCEL, p->lastinvite, XMIT_RELIABLE, FALSE);
|
||||
/* Actually don't destroy us yet, wait for the 487 on our original
|
||||
|
||||
Reference in New Issue
Block a user