diff --git a/dlls/ws2_32/tests/sock.c b/dlls/ws2_32/tests/sock.c index 9116c2b169d..33cdd5d6d15 100644 --- a/dlls/ws2_32/tests/sock.c +++ b/dlls/ws2_32/tests/sock.c @@ -4553,7 +4553,7 @@ static void test_close_events(struct event_test_ctx *ctx) check_events(ctx, 0, 0, 200); select_events(ctx, server, FD_ACCEPT | FD_CLOSE | FD_CONNECT | FD_OOB | FD_READ); - check_events_todo(ctx, FD_CLOSE, 0, 200); + check_events_todo_event(ctx, FD_CLOSE, 0, 200); closesocket(server); } diff --git a/server/sock.c b/server/sock.c index 92202d317c4..340566cbb0a 100644 --- a/server/sock.c +++ b/server/sock.c @@ -400,12 +400,11 @@ static void sock_wake_up( struct sock *sock ) unsigned int events = sock->pending_events & sock->mask; int i; - if ( !events ) return; - if (sock->event) { if (debug_level) fprintf(stderr, "signalling events %x ptr %p\n", events, sock->event ); - set_event( sock->event ); + if (events) + set_event( sock->event ); } if (sock->window) {