diff options
author | Alastair Poole <mail@alastairpoole.com> | 2021-11-26 08:32:17 +0000 |
---|---|---|
committer | Alastair Poole <mail@alastairpoole.com> | 2021-11-26 08:32:17 +0000 |
commit | 38a4c53a84992d6720e89065b928a4149fc359ad (patch) | |
tree | f37b7cd6fc9921453c64204ee433379cc714ee26 /src | |
parent | 43108e772a95d98fdd48f43a4fe707d7995e18b2 (diff) | |
download | efl-38a4c53a84992d6720e89065b928a4149fc359ad.tar.gz |
eio_mon: separate dir/file concerns.
As per ecore_file_monitor.
Diffstat (limited to 'src')
-rw-r--r-- | src/lib/eio/eio_monitor_kevent.c | 14 |
1 files changed, 9 insertions, 5 deletions
diff --git a/src/lib/eio/eio_monitor_kevent.c b/src/lib/eio/eio_monitor_kevent.c index a99b27763f..0750875e88 100644 --- a/src/lib/eio/eio_monitor_kevent.c +++ b/src/lib/eio/eio_monitor_kevent.c @@ -189,10 +189,13 @@ _eio_kevent_handler(void *data EINA_UNUSED, Ecore_Fd_Handler *fdh) if(evs[i].fflags & NOTE_WRITE || evs[i].fflags & NOTE_ATTRIB) { /* Handle directory/file creation and deletion */ - _eio_kevent_event_find(backend); - /* Old default behaviour */ - event_code = EIO_MONITOR_FILE_MODIFIED; - _eio_monitor_send(backend->parent, backend->parent->path, event_code); + if (ecore_file_is_dir(backend->parent->path)) + _eio_kevent_event_find(backend); + else + { + event_code = EIO_MONITOR_FILE_MODIFIED; + _eio_monitor_send(backend->parent, backend->parent->path, event_code); + } } } @@ -279,7 +282,8 @@ void eio_monitor_backend_add(Eio_Monitor *monitor) backend->parent = monitor; monitor->backend = backend; - backend->prev_list = _eio_kevent_ls(backend->parent->path); + if (ecore_file_is_dir(backend->parent->path)) + backend->prev_list = _eio_kevent_ls(backend->parent->path); eina_hash_direct_add(_kevent_monitors, &backend->fd, backend); |