diff --git a/channels/chan_sip.c b/channels/chan_sip.c index fa0431aff6783d75984a5dfaac6f255071551bab..df406483c3ca58b59dd77e1d047c3a636a3a2080 100755 --- a/channels/chan_sip.c +++ b/channels/chan_sip.c @@ -9404,6 +9404,11 @@ static void handle_response_invite(struct sip_pvt *p, int resp, char *rest, stru ast_log(LOG_DEBUG, "SIP response %d to standard invite\n", resp); } + if (ast_test_flag(p, SIP_ALREADYGONE)) { /* This call is already gone */ + ast_log(LOG_DEBUG, "Got response on call that is already terminated: %s (ignoring)\n", p->callid); + return; + } + switch (resp) { case 100: /* Trying */ sip_cancel_destroy(p);