devilhorns pushed a commit to branch master.

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

commit ceecd67d648bf5df9f9f3e877847f26d3b07477c
Author: Gwanglim Lee <gl77....@samsung.com>
Date:   Thu Aug 7 10:19:24 2014 -0400

    win: Don't call ecore_x_screensaver APIs if elm win doesn't have X11 window
    
    Summary:
    Elementary application crashes on startup when it is running with
    wayland engine. This crash problem happens while ecore_x_screensaver API
    is being called from _win_noblank_eval funcion. Thus we should not call
    ecore_x_screensaver APIs if elm win doesn't have X11 window.
    
    Test Plan:
    1. build efl and elementary to support x11 and also wayland
    1. run weston without xwayland
    2. run elementary_test on the weston
    
    Reviewers: raster, seoz, stefan_schmidt, devilhorns
    
    Differential Revision: https://phab.enlightenment.org/D1293
---
 src/lib/elm_win.c | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/src/lib/elm_win.c b/src/lib/elm_win.c
index 68f5365..2ffef69 100644
--- a/src/lib/elm_win.c
+++ b/src/lib/elm_win.c
@@ -319,6 +319,7 @@ _win_noblank_eval(void)
    Eina_List *l;
    Evas_Object *obj;
    int noblanks = 0;
+   Eina_Bool change = EINA_FALSE;
 
 #ifdef HAVE_ELEMENTARY_X
    EINA_LIST_FOREACH(_elm_win_list, l, obj)
@@ -329,10 +330,14 @@ _win_noblank_eval(void)
           {
              if ((sd->noblank) && (!sd->iconified) && (!sd->withdrawn) &&
                  evas_object_visible_get(obj))
-             noblanks++;
+               noblanks++;
+
+             change = EINA_TRUE;
           }
      }
 
+   if (!change) return;
+
    if (ENGINE_COMPARE(ELM_SOFTWARE_X11) || 
        ENGINE_COMPARE(ELM_SOFTWARE_16_X11) || 
        ENGINE_COMPARE(ELM_XRENDER_X11) || ENGINE_COMPARE(ELM_OPENGL_X11) ||

-- 


Reply via email to