]> git.ipfire.org Git - thirdparty/asterisk.git/commitdiff
If Asterisk receives a 488 on an INVITE (not a reinvite), then
authorMark Michelson <mmichelson@digium.com>
Wed, 9 Apr 2008 14:40:05 +0000 (14:40 +0000)
committerMark Michelson <mmichelson@digium.com>
Wed, 9 Apr 2008 14:40:05 +0000 (14:40 +0000)
we should not send a BYE.

(closes issue #12392)
Reported by: fnordian
Patches:
      chan_sip.patch uploaded by fnordian (license 110) with small modification from me

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@113681 65c4cc65-6c06-0410-ace0-fbb531ad65f3

channels/chan_sip.c

index 4f4792f00685d103b8a4612ffa8ee30c9d8071f7..fa6fcd925847dc480da40cd9fccbca3d980863c3 100644 (file)
@@ -12350,7 +12350,10 @@ static void handle_response_invite(struct sip_pvt *p, int resp, char *rest, stru
                        /* We can't set up this call, so give up */
                        if (p->owner && !ast_test_flag(req, SIP_PKT_IGNORE))
                                ast_queue_control(p->owner, AST_CONTROL_CONGESTION);
-                       ast_set_flag(&p->flags[0], SIP_NEEDDESTROY);    
+                       ast_set_flag(&p->flags[0], SIP_NEEDDESTROY);
+                       /* If there's no dialog to end, then mark p as already gone */
+                       if (!reinvite)
+                               sip_alreadygone(p);
                }
                break;
        case 491: /* Pending */