From afad281dd1b4f5db226599980daf403c4db70937 Mon Sep 17 00:00:00 2001 From: Zebediah Figura Date: Mon, 10 May 2021 10:19:44 -0500 Subject: [PATCH] server: Do not call sock_reselect() on an uninitialized socket. Signed-off-by: Zebediah Figura Signed-off-by: Alexandre Julliard --- server/sock.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/server/sock.c b/server/sock.c index 24a826e4ce5..6891b5cbc57 100644 --- a/server/sock.c +++ b/server/sock.c @@ -838,8 +838,10 @@ static void sock_reselect_async( struct fd *fd, struct async_queue *queue ) { struct sock *sock = get_fd_user( fd ); - /* ignore reselect on ifchange queue */ - if (&sock->ifchange_q != queue) + /* Don't reselect the ifchange queue; we always ask for POLLIN. + * Don't reselect an uninitialized socket; we can't call set_fd_events() on + * a pseudo-fd. */ + if (queue != &sock->ifchange_q && sock->type) sock_reselect( sock ); }