aboutsummaryrefslogtreecommitdiff
path: root/src/core
diff options
context:
space:
mode:
authorGarrett D'Amore <garrett@damore.org>2018-01-09 13:08:33 -0800
committerGarrett D'Amore <garrett@damore.org>2018-01-09 13:08:33 -0800
commit1cfa242ceb8c8c987e3406700e95874fda107793 (patch)
tree0c4fe2b7d84f37c29fc9d5f14be8de2dceb7dc77 /src/core
parent2da5acde4acaf523a89d012b1bb87a4e5862e7c5 (diff)
downloadnng-1cfa242ceb8c8c987e3406700e95874fda107793.tar.gz
nng-1cfa242ceb8c8c987e3406700e95874fda107793.tar.bz2
nng-1cfa242ceb8c8c987e3406700e95874fda107793.zip
fixes #196 surveyor pattern hangs after second survey
Diffstat (limited to 'src/core')
-rw-r--r--src/core/timer.c8
1 files changed, 3 insertions, 5 deletions
diff --git a/src/core/timer.c b/src/core/timer.c
index 7608f7d5..8db2e9d8 100644
--- a/src/core/timer.c
+++ b/src/core/timer.c
@@ -1,6 +1,6 @@
//
-// Copyright 2017 Garrett D'Amore <garrett@damore.org>
-// Copyright 2017 Capitar IT Group BV <info@capitar.com>
+// Copyright 2018 Staysail Systems, Inc. <info@staysail.tech>
+// Copyright 2018 Capitar IT Group BV <info@capitar.com>
//
// This software is supplied under the terms of the MIT License, a
// copy of which should be located in the distribution where this
@@ -105,7 +105,6 @@ nni_timer_schedule(nni_timer_node *node, nni_time when)
{
nni_timer * timer = &nni_global_timer;
nni_timer_node *srch;
- int wake = 1;
nni_mtx_lock(&timer->t_mx);
node->t_expire = when;
@@ -117,14 +116,13 @@ nni_timer_schedule(nni_timer_node *node, nni_time when)
srch = nni_list_first(&timer->t_entries);
while ((srch != NULL) && (srch->t_expire < node->t_expire)) {
srch = nni_list_next(&timer->t_entries, srch);
- wake = 0;
}
if (srch != NULL) {
nni_list_insert_before(&timer->t_entries, node, srch);
} else {
nni_list_append(&timer->t_entries, node);
}
- if (wake) {
+ if (nni_list_first(&timer->t_entries) == node) {
nni_cv_wake1(&timer->t_sched_cv);
}
nni_mtx_unlock(&timer->t_mx);