On Sat, May 05, 2012 at 02:52:31PM +0400, Denis Bilenko 
<denis.bile...@gmail.com> wrote:
> It is currently possible for this to happen:
> 
>     ev_run(&loop, 0); // exits naturally (that is, without being
> interrupted with ev_break())
>     assert(ev_pending_count() == 0); // FAILS, ev_pending_count() is positive.

Hi, can you check out current CVS?
(cvs -z3 -d :pserver:anonym...@cvs.schmorp.de/schmorpforge co libev)

That version should execute queued higher priority watchers in proper order
(that is, when you queue a higher priroity watcher form a lower-priority
watcher callback the next watcher to be executed will be the higher-priority
one)

That should solve your original problem as a side-effect.

-- 
                The choice of a       Deliantra, the free code+content MORPG
      -----==-     _GNU_              http://www.deliantra.net
      ----==-- _       generation
      ---==---(_)__  __ ____  __      Marc Lehmann
      --==---/ / _ \/ // /\ \/ /      schm...@schmorp.de
      -=====/_/_//_/\_,_/ /_/\_\

_______________________________________________
libev mailing list
libev@lists.schmorp.de
http://lists.schmorp.de/cgi-bin/mailman/listinfo/libev

Reply via email to