On 12/09/2010 10:31 AM, Mike Blumenkrantz wrote:

>>> Upon arriving at _ecore_main_fd_handlers_bads_rem, perhaps we should rebuild
>>> the epoll fd (ie close it, then reopen and add all fds again) as well by
>>> default? Or, if not by default, at least rebuild it if we don't find
>>> anything by looping over the inlist?
>>
>> It's already done.  See ecore/src/lib/ecore/ecore_main.c # 272
>>
>> thanks,
>>
>> Mike
>>
> Line 272 is this:
>     if (!ECORE_MAGIC_CHECK(fdh, ECORE_MAGIC_FD_HANDLER))

I've still got patches floating on top of that file.  I meant here:

static inline void
_ecore_main_fdh_poll_del(Ecore_Fd_Handler *fdh)
...
    if ((epoll_ctl(efd, EPOLL_CTL_DEL, fdh->fd, &ev) < 0))
      {
         if (errno == EBADF)
           {
              WRN("fd %d was closed, can't remove from epoll - reinit!",
                  fdh->fd);
              _ecore_main_loop_shutdown();
              _ecore_main_loop_init();
           }

thanks,

Mike

------------------------------------------------------------------------------
This SF Dev2Dev email is sponsored by:

WikiLeaks The End of the Free Internet
http://p.sf.net/sfu/therealnews-com
_______________________________________________
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

Reply via email to