now E shouldnt segv if efsd goes pfffffffffft

SVN revision: 4226
This commit is contained in:
Carsten Haitzler 2001-02-15 23:10:30 +00:00
parent ba4c6110bb
commit 2920d940f6
1 changed files with 28 additions and 27 deletions

View File

@ -8,33 +8,34 @@ static void _e_fs_fd_handle(int fd);
static void static void
_e_fs_fd_handle_a_la_cK(int fd) _e_fs_fd_handle_a_la_cK(int fd)
{ {
EfsdEvent ev; EfsdEvent ev;
Evas_List l; Evas_List l;
while (efsd_events_pending(ec)) while ((ec) && efsd_events_pending(ec))
{ {
bzero(&ev, sizeof(EfsdEvent)); ZERO(&ev, EfsdEvent, 1);
if (efsd_next_event(ec, &ev) >= 0) if (efsd_next_event(ec, &ev) >= 0)
{ {
for (l = fs_handlers; l; l = l->next) for (l = fs_handlers; l; l = l->next)
{ {
void (*func) (EfsdEvent *ev); void (*func) (EfsdEvent *ev);
func = l->data; func = l->data;
func(&ev); func(&ev);
} }
} }
else else
{ {
efsd_close(ec); efsd_close(ec);
e_del_event_fd(fd); e_del_event_fd(fd);
/* FIXME: need to queue a popup dialog here saying */ ec = NULL;
/* efsd went wonky */ /* FIXME: need to queue a popup dialog here saying */
printf("EEEEEEEEEEK efsd went wonky\n"); /* efsd went wonky */
} printf("EEEEEEEEEEK efsd went wonky\n");
}
efsd_cleanup_event(&ev);
efsd_cleanup_event(&ev);
} }
} }