Module: wine Branch: master Commit: 683d46a2cdf08d999f07d13e048ac6bca98b46fa URL: https://source.winehq.org/git/wine.git/?a=commit;h=683d46a2cdf08d999f07d13e0...
Author: Zebediah Figura zfigura@codeweavers.com Date: Tue May 3 17:56:27 2022 -0500
server: Clear only returned events in IOCTL_AFD_GET_EVENTS.
Signed-off-by: Zebediah Figura zfigura@codeweavers.com Signed-off-by: Alexandre Julliard julliard@winehq.org
---
dlls/ws2_32/tests/sock.c | 6 +++--- server/sock.c | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/dlls/ws2_32/tests/sock.c b/dlls/ws2_32/tests/sock.c index c88016c5404..7bc2b2474ca 100644 --- a/dlls/ws2_32/tests/sock.c +++ b/dlls/ws2_32/tests/sock.c @@ -5659,7 +5659,7 @@ static void test_connect_events(struct event_test_ctx *ctx) if (ctx->is_message) check_events(ctx, FD_WRITE, 0, 200); else - check_events_todo(ctx, FD_CONNECT, 0, 200); + check_events(ctx, FD_CONNECT, 0, 200);
closesocket(client); closesocket(server); @@ -5896,7 +5896,7 @@ static void test_read_events(struct event_test_ctx *ctx) check_events(ctx, 0, 0, 0);
select_events(ctx, server, FD_ACCEPT | FD_CONNECT | FD_OOB | FD_READ | FD_WRITE); - check_events_todo_event(ctx, FD_READ, FD_WRITE, 200); + check_events(ctx, FD_READ, FD_WRITE, 200); check_events(ctx, 0, 0, 0);
ret = sync_recv(server, buffer, 5, 0); @@ -6111,7 +6111,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_event(ctx, FD_CLOSE, 0, 200); + check_events(ctx, FD_CLOSE, 0, 200);
closesocket(server); } diff --git a/server/sock.c b/server/sock.c index 9f9b9bdfcd9..29dd1ca7fa8 100644 --- a/server/sock.c +++ b/server/sock.c @@ -2516,7 +2516,7 @@ static void sock_ioctl( struct fd *fd, ioctl_code_t code, struct async *async ) for (i = 0; i < ARRAY_SIZE( params.status ); ++i) params.status[i] = sock_get_ntstatus( sock->errors[i] );
- sock->pending_events = 0; + sock->pending_events &= ~sock->mask; sock_reselect( sock );
set_reply_data( ¶ms, sizeof(params) );