diff --git a/channels/chan_iax2.c b/channels/chan_iax2.c index 9b6e2ff462959c23e802c5d231bb1f5f47428c80..58f52f496107cd34d43d52991f689962bdc866b0 100644 --- a/channels/chan_iax2.c +++ b/channels/chan_iax2.c @@ -1149,10 +1149,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; } @@ -1190,10 +1189,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; }