From ab006391305165c805f75e3a2ce20946748233c9 Mon Sep 17 00:00:00 2001 From: Ondrej Zajicek Date: Sat, 21 Feb 2015 12:27:05 +0100 Subject: [PATCH] Fixes a bug in locking code. When multiple protocols have a lock for the same IP address, it crashes under some circumstances. Thanks to Matthias Schiffer for the bugreport. --- nest/locks.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nest/locks.c b/nest/locks.c index c74f2f45..ad2af493 100644 --- a/nest/locks.c +++ b/nest/locks.c @@ -70,7 +70,7 @@ olock_free(resource *r) DBG("olock: -> %p becomes locked\n", n); q = SKIP_BACK(struct object_lock, n, n); rem_node(n); - add_tail_list(&l->waiters, &q->waiters); + add_tail_list(&q->waiters, &l->waiters); q->state = OLOCK_STATE_EVENT; add_head(&olock_list, n); ev_schedule(olock_event);