summaryrefslogtreecommitdiff
path: root/src/modules
diff options
context:
space:
mode:
authorMinJeong Kim <minjjj.kim@samsung.com>2015-04-30 11:31:19 -0400
committerChris Michael <cp.michael@samsung.com>2015-04-30 11:31:19 -0400
commitf485d5ffdd9f2f75741d562dc813ecc13f380f4c (patch)
treeb0d00609a5c39548c347834ac1bc8d06357d102b /src/modules
parentfaa99297e0a262f989a7304fdca0a5a7e92583ad (diff)
ecore-evas-wayland: remove duplicated shutdown of ecore_evas_wl_common
Summary: After a creation for ecore_evas_wayland_shm or ecore_evas_wayland_egl is failed, _ecore_evas_wl_common_shutdown() gets called 'twice'. First shutdown is from _ecore_evas_wl_common_free() which is set as fn_free() of ecore_evas engine, and this fn_free() is called by ecore_evas_free(). Second is from direct call inside ecore_evas_wayland_shm_new_internal() (or ecore_evas_wayland_egl_new_internal()). This duplicated shutdown causes block of first next _ecore_evas_wl_common_init because init count is not zero but -1. So second shutdown should be removed so that it makes enable fall back to another wayland engine correctly when one is failed to create ecore_evas_wayland. @fix Reviewers: gwanglim, devilhorns Reviewed By: devilhorns Subscribers: cedric Differential Revision: https://phab.enlightenment.org/D2451
Diffstat (limited to 'src/modules')
-rw-r--r--src/modules/ecore_evas/engines/wayland/ecore_evas_wayland_egl.c1
-rw-r--r--src/modules/ecore_evas/engines/wayland/ecore_evas_wayland_shm.c1
2 files changed, 0 insertions, 2 deletions
diff --git a/src/modules/ecore_evas/engines/wayland/ecore_evas_wayland_egl.c b/src/modules/ecore_evas/engines/wayland/ecore_evas_wayland_egl.c
index d9b579d..6962434 100644
--- a/src/modules/ecore_evas/engines/wayland/ecore_evas_wayland_egl.c
+++ b/src/modules/ecore_evas/engines/wayland/ecore_evas_wayland_egl.c
@@ -253,7 +253,6 @@ ecore_evas_wayland_egl_new_internal(const char *disp_name, unsigned int parent,
253 253
254 err: 254 err:
255 ecore_evas_free(ee); 255 ecore_evas_free(ee);
256 _ecore_evas_wl_common_shutdown();
257 256
258 ee_err: 257 ee_err:
259 ecore_wl_shutdown(); 258 ecore_wl_shutdown();
diff --git a/src/modules/ecore_evas/engines/wayland/ecore_evas_wayland_shm.c b/src/modules/ecore_evas/engines/wayland/ecore_evas_wayland_shm.c
index b5cfa56..697813f 100644
--- a/src/modules/ecore_evas/engines/wayland/ecore_evas_wayland_shm.c
+++ b/src/modules/ecore_evas/engines/wayland/ecore_evas_wayland_shm.c
@@ -247,7 +247,6 @@ ecore_evas_wayland_shm_new_internal(const char *disp_name, unsigned int parent,
247 247
248 err: 248 err:
249 ecore_evas_free(ee); 249 ecore_evas_free(ee);
250 _ecore_evas_wl_common_shutdown();
251 ee_err: 250 ee_err:
252 ecore_wl_shutdown(); 251 ecore_wl_shutdown();
253 return NULL; 252 return NULL;