aboutsummaryrefslogtreecommitdiffstats
path: root/channels/chan_sip.c
diff options
context:
space:
mode:
authoroej <oej@f38db490-d61c-443f-a65b-d21fe96a405b>2006-11-13 19:20:54 +0000
committeroej <oej@f38db490-d61c-443f-a65b-d21fe96a405b>2006-11-13 19:20:54 +0000
commit61fb405acd0501468cd3ffb59e89e647513bc568 (patch)
treeed66ef57ca63b5603acee5fa299a0ff1deab6f14 /channels/chan_sip.c
parentdf34be120187daa1ab0c8922d4623b3f25703e27 (diff)
Small fix for uncommon scenario.
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@47579 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'channels/chan_sip.c')
-rw-r--r--channels/chan_sip.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/channels/chan_sip.c b/channels/chan_sip.c
index 5f3490809..e8ae70197 100644
--- a/channels/chan_sip.c
+++ b/channels/chan_sip.c
@@ -10753,7 +10753,7 @@ static void sip_dump_history(struct sip_pvt *dialog)
{
int x = 0;
struct sip_history *hist;
- static errmsg = 0;
+ static int errmsg = 0;
if (!dialog)
return;
@@ -14058,7 +14058,8 @@ static int handle_request_bye(struct sip_pvt *p, struct sip_request *req)
int res;
struct ast_channel *bridged_to;
- if (p->pendinginvite && !ast_test_flag(&p->flags[0], SIP_OUTGOING) && !ast_test_flag(req, SIP_PKT_IGNORE))
+ /* If we have an INCOMING invite that we haven't answered, terminate that transaction */
+ if (p->pendinginvite && !ast_test_flag(&p->flags[0], SIP_OUTGOING) && !ast_test_flag(req, SIP_PKT_IGNORE) && !p->owner)
transmit_response_reliable(p, "487 Request Terminated", &p->initreq);
copy_request(&p->initreq, req);