summaryrefslogtreecommitdiff
path: root/channels/chan_iax2.c
diff options
context:
space:
mode:
authorRussell Bryant <russell@russellbryant.com>2008-06-02 12:30:42 +0000
committerRussell Bryant <russell@russellbryant.com>2008-06-02 12:30:42 +0000
commit2feb90d5116cc493497fb168b5b8290217c43cb0 (patch)
tree5bf148f391f06cf09220af45124a53e84f8ce5ca /channels/chan_iax2.c
parent0f4bebac8182e537f834b7c03baa76a7c07a83cc (diff)
Merged revisions 119687 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4 ........ r119687 | russell | 2008-06-02 07:30:17 -0500 (Mon, 02 Jun 2008) | 3 lines 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: https://origsvn.digium.com/svn/asterisk/trunk@119688 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'channels/chan_iax2.c')
-rw-r--r--channels/chan_iax2.c10
1 files changed, 4 insertions, 6 deletions
diff --git a/channels/chan_iax2.c b/channels/chan_iax2.c
index 9b6e2ff46..58f52f496 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;
}