diff options
author | Ivan Furs <i.furs@samsung.com> | 2016-12-16 15:27:09 -0800 |
---|---|---|
committer | Cedric BAIL <cedric@osg.samsung.com> | 2016-12-16 15:27:14 -0800 |
commit | 1c0b3668e16792ebbcd9e950daf6c79475f3ecc4 (patch) | |
tree | 4deceefea35f1df5b404661157ee306945484b44 | |
parent | 2b3bee13019650dcf1916f470982f8c34f709b0e (diff) | |
download | efl-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.c | 1 |
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); } |