From c99b1330741e025ba30580a77b1de7f951b80e15 Mon Sep 17 00:00:00 2001 From: russell Date: Mon, 2 Jun 2008 12:30:17 +0000 Subject: Even of the first PING or LAGRQ doesn't get sent because it comes up too soon, make sure to reschedule so it gets sent later. git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@119687 f38db490-d61c-443f-a65b-d21fe96a405b --- channels/chan_iax2.c | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) (limited to 'channels') diff --git a/channels/chan_iax2.c b/channels/chan_iax2.c index 6cdc3b888..b20619fb3 100644 --- a/channels/chan_iax2.c +++ b/channels/chan_iax2.c @@ -998,10 +998,9 @@ static void __send_ping(const void *data) ast_mutex_lock(&iaxsl[callno]); while (iaxs[callno] && iaxs[callno]->pingid != -1) { - if (!iaxs[callno]->peercallno) { - break; + if (iaxs[callno]->peercallno) { + send_command(iaxs[callno], AST_FRAME_IAX, IAX_COMMAND_PING, 0, NULL, 0, -1); } - send_command(iaxs[callno], AST_FRAME_IAX, IAX_COMMAND_PING, 0, NULL, 0, -1); iaxs[callno]->pingid = iax2_sched_add(sched, ping_time * 1000, send_ping, data); break; } @@ -1039,10 +1038,9 @@ static void __send_lagrq(const void *data) ast_mutex_lock(&iaxsl[callno]); while (iaxs[callno] && iaxs[callno]->lagid > -1) { - if (!iaxs[callno]->peercallno) { - break; + if (iaxs[callno]->peercallno) { + send_command(iaxs[callno], AST_FRAME_IAX, IAX_COMMAND_LAGRQ, 0, NULL, 0, -1); } - send_command(iaxs[callno], AST_FRAME_IAX, IAX_COMMAND_LAGRQ, 0, NULL, 0, -1); iaxs[callno]->lagid = iax2_sched_add(sched, lagrq_time * 1000, send_lagrq, data); break; } -- cgit v1.2.3