aboutsummaryrefslogtreecommitdiffstats
path: root/channels/chan_iax2.c
diff options
context:
space:
mode:
authorrussell <russell@f38db490-d61c-443f-a65b-d21fe96a405b>2008-06-02 12:31:05 +0000
committerrussell <russell@f38db490-d61c-443f-a65b-d21fe96a405b>2008-06-02 12:31:05 +0000
commit09b912580f3ea9b7a6a4471ee0c5b043fc978e73 (patch)
treedc31261fded0e9f826cba7a26a73aa0f87319248 /channels/chan_iax2.c
parentc9f307310382e6471d9198a8270d880bc86913e0 (diff)
Merged revisions 119688 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk ................ r119688 | russell | 2008-06-02 07:30:42 -0500 (Mon, 02 Jun 2008) | 11 lines 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: http://svn.digium.com/svn/asterisk/branches/1.6.0@119689 f38db490-d61c-443f-a65b-d21fe96a405b
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 42e585ba4..147d4d408 100644
--- a/channels/chan_iax2.c
+++ b/channels/chan_iax2.c
@@ -1138,10 +1138,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;
}
@@ -1179,10 +1178,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;
}