summaryrefslogtreecommitdiff
path: root/src/lib/eio/eio_monitor_inotify.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib/eio/eio_monitor_inotify.c')
-rw-r--r--src/lib/eio/eio_monitor_inotify.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/lib/eio/eio_monitor_inotify.c b/src/lib/eio/eio_monitor_inotify.c
index faa34b3de4..2222a56476 100644
--- a/src/lib/eio/eio_monitor_inotify.c
+++ b/src/lib/eio/eio_monitor_inotify.c
@@ -141,6 +141,9 @@ _eio_inotify_handler(void *data EINA_UNUSED, Ecore_Fd_Handler *fdh)
141 if ((event_size + i) > size) break ; 141 if ((event_size + i) > size) break ;
142 i += event_size; 142 i += event_size;
143 143
144 // No need to waste time looking up for just destroyed handler
145 if ((event->mask & IN_IGNORED)) continue ;
146
144 backend = eina_hash_find(_inotify_monitors, &event->wd); 147 backend = eina_hash_find(_inotify_monitors, &event->wd);
145 if (!backend) continue ; 148 if (!backend) continue ;
146 if (!backend->parent) continue ; 149 if (!backend->parent) continue ;
@@ -268,6 +271,8 @@ void eio_monitor_backend_del(Eio_Monitor *monitor)
268 monitor->backend = NULL; 271 monitor->backend = NULL;
269 if (!backend) return; 272 if (!backend) return;
270 273
274 backend->parent = NULL;
275
271 eina_hash_del(_inotify_monitors, &backend->hwnd, backend); 276 eina_hash_del(_inotify_monitors, &backend->hwnd, backend);
272} 277}
273 278