discomfitor pushed a commit to branch enlightenment-0.19.

http://git.enlightenment.org/core/enlightenment.git/commit/?id=b75e41908612fbbd0fcbbfbd1a8966113f40e72f

commit b75e41908612fbbd0fcbbfbd1a8966113f40e72f
Author: Mike Blumenkrantz <[email protected]>
Date:   Fri Dec 5 13:52:52 2014 -0500

    store eeze_scanner connection poller to avoid creating an infinite number
    
    ref T1612
---
 src/bin/e_fm/e_fm_main_eeze.c | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/src/bin/e_fm/e_fm_main_eeze.c b/src/bin/e_fm/e_fm_main_eeze.c
index 289c3b0..b62254b 100644
--- a/src/bin/e_fm/e_fm_main_eeze.c
+++ b/src/bin/e_fm/e_fm_main_eeze.c
@@ -56,6 +56,7 @@ static Ecore_Con_Server *svr = NULL;
 static Eet_Data_Descriptor *es_edd = NULL;
 static Eet_Connection *es_con = NULL;
 static Eina_Prefix *pfx = NULL;
+static Ecore_Poller *scanner_poller = NULL;
 
 void
 e_util_env_set(const char *var, const char *val)
@@ -606,8 +607,8 @@ _scanner_add(void *data, int type __UNUSED__, 
Ecore_Exe_Event_Add *ev)
 {
    if (data != ecore_exe_data_get(ev->exe)) return ECORE_CALLBACK_PASS_ON;
    INF("Scanner started");
-   if (_scanner_poll(NULL))
-     ecore_poller_add(ECORE_POLLER_CORE, 8, (Ecore_Task_Cb)_scanner_poll, 
NULL);
+   if ((!_scanner_poll(NULL)) && (!scanner_poller))
+     scanner_poller = ecore_poller_add(ECORE_POLLER_CORE, 8, 
(Ecore_Task_Cb)_scanner_poll, NULL);
    return ECORE_CALLBACK_RENEW;
 }
 
@@ -675,6 +676,7 @@ static Eina_Bool
 _scanner_con(void *data __UNUSED__, int type __UNUSED__, 
Ecore_Con_Event_Server_Del *ev __UNUSED__)
 {
    _e_fm_main_catch(EFM_MODE_USING_EEZE_MOUNT);
+   E_FREE_FUNC(scanner_poller, ecore_poller_del);
    INF("Scanner connected");
    es_con = eet_connection_new(_scanner_read, _scanner_write, NULL);
    return ECORE_CALLBACK_RENEW;
@@ -757,6 +759,7 @@ void
 _e_fm_main_eeze_shutdown(void)
 {
    if (scanner) ecore_exe_free(scanner);
+   E_FREE_FUNC(scanner_poller, ecore_poller_del);
    eeze_mount_tabs_unwatch();
    eeze_shutdown();
    ecore_con_shutdown();

-- 


Reply via email to