diff --git a/channels/chan_sip.c b/channels/chan_sip.c index f2547ae52b6d9b795de42237b8ede4dcbfeae46a..2720bcede63a2877545b40b880603be01c3e3e1f 100644 --- a/channels/chan_sip.c +++ b/channels/chan_sip.c @@ -4236,8 +4236,7 @@ static int sip_call(struct ast_channel *ast, char *dest, int timeout) p->invitestate = INV_CALLING; /* Initialize auto-congest time */ - ast_sched_del(sched, p->initid); - p->initid = ast_sched_add(sched, p->timer_b, auto_congest, dialog_ref(p)); + AST_SCHED_REPLACE(p->initid, sched, p->timer_b, auto_congest, dialog_ref(p)); } return res; @@ -4307,7 +4306,7 @@ static void __sip_destroy(struct sip_pvt *p, int lockowner, int lockdialoglist) if (p->stateid > -1) ast_extension_state_del(p->stateid, NULL); - ast_sched_del(sched, p->initid); + AST_SCHED_DEL(sched, p->initid); AST_SCHED_DEL(sched, p->waitid); AST_SCHED_DEL(sched, p->autokillid); @@ -14552,7 +14551,7 @@ static void handle_response_invite(struct sip_pvt *p, int resp, char *rest, stru /* Acknowledge sequence number - This only happens on INVITE from SIP-call */ /* Don't auto congest anymore since we've gotten something useful back */ - ast_sched_del(sched, p->initid); + AST_SCHED_DEL(sched, p->initid); /* RFC3261 says we must treat every 1xx response (but not 100) that we don't recognize as if it was 183.