forked from enlightenment/enlightenment
and NOw we can open up /dev/ and not have E bog down into a completely
non-interactive state... this works like a charm... love it.. GOOD WORK cK! Excellent job.. this is actually what i originally thought we shoudl do (be able to send not just filename but also stat,mimetype etc. info along in one go with efsd doing in one lump) but i thought it might wokr ok as we had it before.. and it wasnt... so my original hunch was right... and it's working like a complete charmer. GOOD JOB! i'ts beginging to get to the point where we can do something.... WHEEEEEEEEEE congrats cK. now... i wish we had more cK's out there... (whoever is in munich out there buy cK a beer or 10) SVN revision: 4443
This commit is contained in:
parent
afdb663ac9
commit
a6c47e5205
46
src/fs.c
46
src/fs.c
|
@ -8,25 +8,29 @@ static void _e_fs_fd_handle(int fd);
|
|||
static void
|
||||
_e_fs_fd_handle(int fd)
|
||||
{
|
||||
Evas_List events = NULL;
|
||||
double start, current;
|
||||
|
||||
/* printf("############## fs event...\n");*/
|
||||
printf("############## fs event...\n");
|
||||
start = e_get_time();
|
||||
while ((ec) && efsd_events_pending(ec))
|
||||
{
|
||||
EfsdEvent *ev;
|
||||
EfsdEvent ev;
|
||||
|
||||
ev = NEW(EfsdEvent, 1);
|
||||
ZERO(ev, EfsdEvent, 1);
|
||||
|
||||
if (efsd_next_event(ec, ev) >= 0)
|
||||
if (efsd_next_event(ec, &ev) >= 0)
|
||||
{
|
||||
events = evas_list_append(events, ev);
|
||||
Evas_List l;
|
||||
|
||||
for (l = fs_handlers; l; l = l->next)
|
||||
{
|
||||
void (*func) (EfsdEvent *ev);
|
||||
|
||||
func = l->data;
|
||||
func(&ev);
|
||||
}
|
||||
efsd_event_cleanup(&ev);
|
||||
}
|
||||
else
|
||||
{
|
||||
FREE(ev);
|
||||
efsd_close(ec);
|
||||
e_del_event_fd(fd);
|
||||
ec = NULL;
|
||||
|
@ -43,29 +47,7 @@ _e_fs_fd_handle(int fd)
|
|||
break;
|
||||
}
|
||||
}
|
||||
if (events)
|
||||
{
|
||||
Evas_List l;
|
||||
|
||||
for (l = events; l; l = l->next)
|
||||
{
|
||||
Evas_List ll;
|
||||
EfsdEvent *ev;
|
||||
|
||||
ev = l->data;
|
||||
for (ll = fs_handlers; ll; ll = ll->next)
|
||||
{
|
||||
void (*func) (EfsdEvent *ev);
|
||||
|
||||
func = ll->data;
|
||||
func(ev);
|
||||
}
|
||||
efsd_event_cleanup(ev);
|
||||
FREE(ev);
|
||||
}
|
||||
evas_list_free(events);
|
||||
}
|
||||
/* printf("############## fs done\n");*/
|
||||
printf("############## fs done\n");
|
||||
}
|
||||
|
||||
void
|
||||
|
|
Loading…
Reference in New Issue