forked from enlightenment/efl
fix ecore to NOT segv like a madman now.
SVN revision: 17257
This commit is contained in:
parent
442ce15652
commit
8d2fe31aef
|
@ -122,13 +122,10 @@ ecore_file_monitor_poll_add(const char *path,
|
|||
|
||||
f = calloc(1, sizeof(Ecore_File));
|
||||
if (!f)
|
||||
{
|
||||
free(file);
|
||||
continue;
|
||||
}
|
||||
|
||||
snprintf(buf, sizeof(buf), "%s/%s", em->path, file);
|
||||
f->name = file;
|
||||
f->name = strdup(file);
|
||||
f->mtime = ecore_file_mod_time(buf);
|
||||
f->is_dir = ecore_file_is_dir(buf);
|
||||
em->files = _ecore_list2_append(em->files, f);
|
||||
|
@ -161,7 +158,8 @@ ecore_file_monitor_poll_del(Ecore_File_Monitor *em)
|
|||
|
||||
/* Remove files */
|
||||
/*It's possible there weren't any files to monitor, so check if the list is init*/
|
||||
if (em->files) {
|
||||
if (em->files)
|
||||
{
|
||||
for (l = em->files; l;)
|
||||
{
|
||||
Ecore_File *file;
|
||||
|
@ -303,7 +301,9 @@ _ecore_file_monitor_poll_check(Ecore_File_Monitor *em)
|
|||
|
||||
/* Files have been added or removed */
|
||||
files = ecore_file_ls(em->path);
|
||||
if (files) { /*Are we a directory? We should check first, rather than rely on null here*/
|
||||
if (files)
|
||||
{
|
||||
/* Are we a directory? We should check first, rather than rely on null here*/
|
||||
while ((file = ecore_list_next(files)))
|
||||
{
|
||||
Ecore_File *f;
|
||||
|
@ -311,20 +311,14 @@ _ecore_file_monitor_poll_check(Ecore_File_Monitor *em)
|
|||
Ecore_File_Event event;
|
||||
|
||||
if (_ecore_file_monitor_poll_checking(em, file))
|
||||
{
|
||||
free(file);
|
||||
continue;
|
||||
}
|
||||
|
||||
snprintf(buf, sizeof(buf), "%s/%s", em->path, file);
|
||||
f = calloc(1, sizeof(Ecore_File));
|
||||
if (!f)
|
||||
{
|
||||
free(file);
|
||||
continue;
|
||||
}
|
||||
|
||||
f->name = file;
|
||||
f->name = strdup(file);
|
||||
f->mtime = ecore_file_mod_time(buf);
|
||||
f->is_dir = ecore_file_is_dir(buf);
|
||||
if (f->is_dir)
|
||||
|
@ -358,7 +352,6 @@ _ecore_file_monitor_poll_checking(Ecore_File_Monitor *em, char *name)
|
|||
if (!strcmp(f->name, name))
|
||||
return 1;
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
#endif
|
||||
|
|
Loading…
Reference in New Issue