From: Jonathan Nieder Date: Sun, 30 May 2010 20:40:44 GMT Subject: Re: [PATCH v2] compat: Add another rudimentary poll() emulation Message-ID: <20100530204044.GB32728@progeny.tock> In-Reply-To: <201005302119.30340.j6t@kdbg.org> Johannes Sixt wrote: > It cannot work on msysgit because > > - on Windows, select() works only for sockets, but we poll() on pipes, too; > > - in our emulation layer, fds that are sockets must be unpacked with > _get_osfhandle() before they can be passed to FD_SET() because (as Paolo has > pointed out) FD_SET() must be populated with handles, not fds. Thanks for the explanation. Alas. >From I get the impression that FD_SETSIZE on Interix might not be so small after all (good). Apparently older versions of Interix (5.3?) do not obey timeouts properly, so the poll() in compat/poll.c should probably use usleep() instead (meh). Anyway, I leave it to developers on that platform to take it from here if they so wish. Ciao, Jonathan