On Tue, Jan 25, 2011 at 12:54:20AM +0100, Bert Belder <[email protected]> 
wrote:
> See the attached test (both files needed).
> 
> Okay, the problem isn't that the handle doesn't get updated, but merely that
> vec_ri and vec_wi in contain the handle that *was* associated with the fd.

Sorry for the delay, I now have a prototype patch that you could try if you
want (feedback would be very appreciated). Unfortunately, it is completely
untested:

   http://data.plan9.de/winselect.diff

The basic idea is pretty simple: whenever the handle changes, we first tell
the backend to remove all events (backend_modify (.., 0)) - the existing code
should then re-arm the backend with the desired watchers.

If that works then this or a similar patch will be part of the next release.

Thanks for analyzing the problem :)

-- 
                The choice of a       Deliantra, the free code+content MORPG
      -----==-     _GNU_              http://www.deliantra.net
      ----==-- _       generation
      ---==---(_)__  __ ____  __      Marc Lehmann
      --==---/ / _ \/ // /\ \/ /      [email protected]
      -=====/_/_//_/\_,_/ /_/\_\

_______________________________________________
libev mailing list
[email protected]
http://lists.schmorp.de/cgi-bin/mailman/listinfo/libev

Reply via email to