aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authoroej <oej@f38db490-d61c-443f-a65b-d21fe96a405b>2006-11-10 20:31:57 +0000
committeroej <oej@f38db490-d61c-443f-a65b-d21fe96a405b>2006-11-10 20:31:57 +0000
commit31b1d8b1241f379b3f14a02ba87a31533a76ae5b (patch)
tree55a3436ed05221dead904495ee4d486f7753f690
parent80b2150063a10b79b31b48fee40aa7d7cd9243be (diff)
Make sure we destroy dialog in case of loop
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@47468 f38db490-d61c-443f-a65b-d21fe96a405b
-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;
}