But it seems that it was different in older MiNTLib. This is why it is important to test with *old* binaries for an eventual Fselect() problem.
Ah, true. I guess the problem is that the old mintlib falls back into Fselect() because Fpoll() return value was ignored. Also it's interesting that while Fselect() really states that 0 == infinite, in select() it's 0 == immediate return and NULL == infinite. Maybe isn't too late to redefine Fselect's behavior to 0 == immediate, <0 == block, similar to Fpoll? I doubt there are many programs using this syscall anyway.