diff --git a/channels/chan_sip.c b/channels/chan_sip.c
index f4ce75f15a87e80c8a091e562a9eb8708438d7e9..6fa8aad6d2cbb3a8662ace94894e01d3c3953b58 100644
--- a/channels/chan_sip.c
+++ b/channels/chan_sip.c
@@ -4185,7 +4185,7 @@ static int sip_call(struct ast_channel *ast, char *dest, int timeout)
 	
 		/* Initialize auto-congest time */
 		ast_sched_del(sched, p->initid);
-		p->initid = ast_sched_add(sched, p->maxtime ? (p->maxtime * 4) : SIP_TRANS_TIMEOUT, auto_congest, p);
+		p->initid = ast_sched_add(sched, p->timer_b, auto_congest, dialog_ref(p));
 	}
 
 	return res;