summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIvan Furs <i.furs@samsung.com>2016-12-16 15:27:09 -0800
committerCedric BAIL <cedric@osg.samsung.com>2016-12-16 15:27:14 -0800
commit1c0b3668e16792ebbcd9e950daf6c79475f3ecc4 (patch)
tree4deceefea35f1df5b404661157ee306945484b44
parent2b3bee13019650dcf1916f470982f8c34f709b0e (diff)
downloadefl-1c0b3668e16792ebbcd9e950daf6c79475f3ecc4.tar.gz
Eio_monitor: support native monitor for Win32 (T4978)
Test Plan: eio_monitor_backend_add() and eio_monitor_fallback_add use different structures **eio_monitor_backend_add() ** struct _Eio_Monitor_Backend { Eio_Monitor *parent; Eio_Monitor_Win32_Watcher *watcher_file; Eio_Monitor_Win32_Watcher *watcher_dir; Eio_Monitor_Win32_Watcher *watcher_parent; }; **eio_monitor_fallback_add()** struct _Eio_Monitor_Backend { Eio_Monitor *parent; Eina_Stat self; Eina_Hash *children; Ecore_Timer *timer; Ecore_Idler *idler; Ecore_Thread *work; int version; Eina_Bool delete_me : 1; Eina_Bool initialised : 1; Eina_Bool destroyed : 1; }; therefore, an error occurs **void eio_monitor_backend_del**(Eio_Monitor *monitor) { if (!_eio_monitor_win32_native) <------_eio_monitor_win32_native is EINA_TRUE { eio_monitor_fallback_del(monitor); <------ignored------ return; <------ignored------ } _eio_monitor_win32_watcher_free(monitor->backend->watcher_parent); _eio_monitor_win32_watcher_free(monitor->backend->watcher_dir); _eio_monitor_win32_watcher_free(monitor->backend->watcher_file); free(monitor->backend); monitor->backend = NULL; } Reviewers: raster, vtorri, an.kroitor, jpeg, reutskiy.v.v, FurryMyad, cedric Reviewed By: cedric Subscribers: vtorri, artem.popov, cedric, jpeg Tags: #windows, #efl Differential Revision: https://phab.enlightenment.org/D4492 Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
-rw-r--r--src/lib/eio/eio_monitor_win32.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/src/lib/eio/eio_monitor_win32.c b/src/lib/eio/eio_monitor_win32.c
index 43c38f31bd..60f9aa35c4 100644
--- a/src/lib/eio/eio_monitor_win32.c
+++ b/src/lib/eio/eio_monitor_win32.c
@@ -418,6 +418,7 @@ void eio_monitor_backend_add(Eio_Monitor *monitor)
free(backend);
fallback:
INF("falling back to poll monitoring");
+ _eio_monitor_win32_native = EINA_FALSE;
eio_monitor_fallback_add(monitor);
}