diff --git a/channels/chan_sip.c b/channels/chan_sip.c index 6f5e263d03df3797ebf926347ae4743379e5d282..1e5b927cf0e264044f9f4420b9c8df3bb2380471 100644 --- a/channels/chan_sip.c +++ b/channels/chan_sip.c @@ -5111,6 +5111,10 @@ static int sip_hangup(struct ast_channel *ast) p->invitestate = INV_TERMINATED; } } else { /* Call is in UP state, send BYE */ + if (p->stimer->st_active == TRUE) { + stop_session_timer(p); + } + if (!p->pendinginvite) { struct ast_channel *bridge = ast_bridged_channel(oldowner); char *audioqos = "";