Subject: bug#17172: 24.3.50; Timeouts when pasting from mouse

From: Paul Eggert <[email-masked]>
Date: Tue, 15 Apr 2014 13:19:31 -0700

Jan Djärv wrote:
> That can't happen, all masks are initialized with FD_ZERO.

True, but after that they can be reused in some cases and it's not 
immediately obvious that they are guaranteed to be properly 
reinitialized for every call to xg_select.

> If we passed masks with garbage in them to pselect we would get EINVAL back.

Not if the garbage's 1 bits happen to correspond to open file descriptors.

> In that case, process.c does not inspect the masks, so this change fixes nothing.

Although it doesn't inspect the masks right away, in some cases it 
reuses a mask later.  The code is reasonably tricky here.

> you just used it as a means to get untested code into the emacs-24 branch

Hmm, well, that's a bit unfair as I did test it, but as you're sure the 
change doesn't fix any user-visible bugs I reverted it.