summaryrefslogtreecommitdiff
path: root/lib/event.c
diff options
context:
space:
mode:
Diffstat (limited to 'lib/event.c')
-rw-r--r--lib/event.c10
1 files changed, 8 insertions, 2 deletions
diff --git a/lib/event.c b/lib/event.c
index 766ffa15..10f83c28 100644
--- a/lib/event.c
+++ b/lib/event.c
@@ -283,7 +283,13 @@ void ev_uncork(struct event_cork *ec)
birdloop_ping(el->loop);
}
- UNLOCK_DOMAIN(cork, ec->lock);
+ struct birdsock *sk;
+ WALK_LIST_FIRST2(sk, cork_node, ec->sockets)
+ {
+// log(L_TRACE "Socket %p uncorked", sk);
+ rem_node(&sk->cork_node);
+ sk_ping(sk);
+ }
- birdloop_ping(&main_birdloop);
+ UNLOCK_DOMAIN(cork, ec->lock);
}