xorg-x11-server/p_xkills_wrong_client.diff

14 lines
589 B
Diff

Index: os/connection.c
===================================================================
--- os/connection.c.orig
+++ os/connection.c
@@ -1009,7 +1009,7 @@ CheckConnections(void)
do {
r = Select (curclient + 1, &tmask, NULL, NULL, &notime);
} while (r < 0 && (errno == EINTR || errno == EAGAIN));
- if (r < 0)
+ if (r < 0 && (errno == EBADF))
if (ConnectionTranslation[curclient] > 0)
CloseDownClient(clients[ConnectionTranslation[curclient]]);
mask &= ~((fd_mask)1 << curoff);