xserver/os
Jesse Barnes 28e33ae6f6 OS support: fix writeable client vs IgnoreClient behavior
When ResetCurrentRequest is called, or IgnoreClient is called when a
client has input pending, IgnoredClientsWithInput will be set.  However,
a subsequent IgnoreClient request will clear the client fd from that fd
set, potentially causing the client to hang.

So add an Ignore/Attend count, and only apply the ignore logic on the
first ignore and the attend logic on the last attend.  This is
consistent with the comments for these functions; callers must pair
them.

Fixes https://bugs.freedesktop.org/show_bug.cgi?id=27035.

Reviewed-by: Keith Packard <keithp@keithp.com>
Reviewed-by: Daniel Stone <daniel@fooishbar.org>
Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
Signed-off-by: Keith Packard <keithp@keithp.com>
2010-06-30 07:59:04 -07:00
..
.gitignore
Makefile.am
WaitFor.c
access.c Don't crash when asked if a client that has disconnected was local 2010-06-22 11:42:33 -07:00
auth.c
backtrace.c
connection.c OS support: fix writeable client vs IgnoreClient behavior 2010-06-30 07:59:04 -07:00
io.c Remove unnecessary parentheses around return values in functions 2010-06-10 06:42:42 -07:00
log.c
mitauth.c
oscolor.c
osdep.h
osinit.c
rpcauth.c
strcasecmp.c Remove unnecessary parentheses around return values in functions 2010-06-10 06:42:42 -07:00
strcasestr.c Remove unnecessary parentheses around return values in functions 2010-06-10 06:42:42 -07:00
strlcat.c
strlcpy.c Remove unnecessary parentheses around return values in functions 2010-06-10 06:42:42 -07:00
utils.c os: Remove unused dev_tty_from_init variable 2010-06-20 05:36:22 +07:00
xdmauth.c Replace deprecated bzero with memset 2010-06-06 15:07:27 +07:00
xdmcp.c Remove unnecessary parentheses around return values in functions 2010-06-10 06:42:42 -07:00
xprintf.c
xsha1.c
xstrans.c