discomfitor pushed a commit to branch master.

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

commit 01ac84035fd09d1ffe9dc224b32325b5b15f591b
Author: Mike Blumenkrantz <zm...@osg.samsung.com>
Date:   Thu Apr 28 17:56:59 2016 -0400

    ensure that the startup apps cache handler has run before trying to start 
apps
    
    fixes timing issues when running startup apps
---
 src/bin/e_startup.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/src/bin/e_startup.c b/src/bin/e_startup.c
index c6b97fb..7b8a5dd 100644
--- a/src/bin/e_startup.c
+++ b/src/bin/e_startup.c
@@ -15,6 +15,7 @@ static E_Order *startup_apps = NULL;
 static int start_app_pos = -1;
 static Ecore_Event_Handler *desktop_cache_update_handler = NULL;
 
+static Eina_Bool desktop_cache_update = EINA_FALSE;
 static Eina_Bool started = EINA_FALSE;
 
 /* externally accessible functions */
@@ -46,7 +47,7 @@ e_startup_mode_set(E_Startup_Mode mode)
 E_API void
 e_startup(void)
 {
-   if (desktop_cache_update_handler)
+   if (!desktop_cache_update)
      started = EINA_TRUE;
    else
      _e_startup();
@@ -116,6 +117,7 @@ _e_startup_event_cb(void *data, int ev_type EINA_UNUSED, 
void *ev)
         _e_startup_error_dialog("E: Efreet could not build cache. "
                                 "Please check your DBus setup");
      }
+   desktop_cache_update = EINA_TRUE;
    E_FREE_FUNC(desktop_cache_update_handler, ecore_event_handler_del);
    buf = data;
    startup_apps = e_order_new(buf);

-- 


Reply via email to