summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorOlle Johansson <oej@edvina.net>2006-11-10 20:31:57 +0000
committerOlle Johansson <oej@edvina.net>2006-11-10 20:31:57 +0000
commitd5243cc7aa84d0f9f5263300491cd5ddeb84e0b2 (patch)
tree55a3436ed05221dead904495ee4d486f7753f690
parentd69eb90f820ba7f878556a9e861f9344b9ab4dfc (diff)
Make sure we destroy dialog in case of loop
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@47468 65c4cc65-6c06-0410-ace0-fbb531ad65f3
-rw-r--r--channels/chan_sip.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/channels/chan_sip.c b/channels/chan_sip.c
index e97e9010b..ba0d08ca4 100644
--- a/channels/chan_sip.c
+++ b/channels/chan_sip.c
@@ -13109,7 +13109,7 @@ static int handle_request_invite(struct sip_pvt *p, struct sip_request *req, int
/* If pedantic is on, we need to check the tags. If they're different, this is
in fact a forked call through a SIP proxy somewhere. */
transmit_response(p, "482 Loop Detected", req);
- /* We do NOT destroy p here, so that our response will be accepted */
+ sip_scheddestroy(p, DEFAULT_TRANS_TIMEOUT);
return 0;
}
@@ -13118,6 +13118,7 @@ static int handle_request_invite(struct sip_pvt *p, struct sip_request *req, int
transmit_response(p, "491 Request Pending", req);
if (option_debug)
ast_log(LOG_DEBUG, "Got INVITE on call where we already have pending INVITE, deferring that - %s\n", p->callid);
+ /* Don't destroy dialog here */
return 0;
}