wayland_imf: Fix bug in shutdown
authorDerek Foreman <derekf@osg.samsung.com>
Mon, 10 Apr 2017 19:44:33 +0000 (14:44 -0500)
committerDerek Foreman <derekf@osg.samsung.com>
Mon, 10 Apr 2017 19:49:57 +0000 (14:49 -0500)
Theoretical bug that may become real in the coming days - ecore_imf's
wayland module has the interface for the text input protocol.  The
imf module gets unloaded after destroying the protocol object but
before receiving all events from the server destined for it.

Currently that's fine, but I've posted some wayland patches for
review that require the interface to remain present while the text
input object is a zombie.  These patches cause some EFL apps to
crash on shutdown when they unmap the wayland imf module.

This moves the wayland interface bits into ecore_wl2 which doesn't
get unmapped.

src/Makefile_Ecore_IMF.am
src/Makefile_Ecore_Wl2.am

index 8b9c9e9..001927f 100644 (file)
@@ -135,14 +135,6 @@ modules/ecore_imf/wayland/wayland_module.c \
 modules/ecore_imf/wayland/wayland_imcontext.c \
 modules/ecore_imf/wayland/wayland_imcontext.h
 
-nodist_modules_ecore_imf_wayland_module_la_SOURCES = \
-modules/ecore_imf/wayland/text-input-unstable-v1-client-protocol.h \
-modules/ecore_imf/wayland/text-input-unstable-v1-protocol.c
-
-BUILT_SOURCES += \
-modules/ecore_imf/wayland/text-input-unstable-v1-client-protocol.h \
-modules/ecore_imf/wayland/text-input-unstable-v1-protocol.c
-
 modules_ecore_imf_wayland_module_la_CPPFLAGS = -I$(top_builddir)/src/lib/efl \
 -I$(top_builddir)/src/modules/ecore_imf/wayland \
 @ECORE_IMF_CFLAGS@ \
index bf05033..69b4b6c 100644 (file)
@@ -30,7 +30,9 @@ lib/ecore_wl2/www-protocol.c \
 lib/ecore_wl2/linux-dmabuf-unstable-v1-protocol.c \
 lib/ecore_wl2/linux-dmabuf-unstable-v1-client-protocol.h \
 lib/ecore_wl2/xdg-shell-unstable-v6-client-protocol.h \
-lib/ecore_wl2/xdg-shell-unstable-v6-protocol.c
+lib/ecore_wl2/xdg-shell-unstable-v6-protocol.c \
+lib/ecore_wl2/text-input-unstable-v1-client-protocol.h \
+lib/ecore_wl2/text-input-unstable-v1-protocol.c
 
 lib_ecore_wl2_libecore_wl2_la_CPPFLAGS = -I$(top_builddir)/src/lib/efl @ECORE_WL2_CFLAGS@
 lib_ecore_wl2_libecore_wl2_la_LIBADD = @ECORE_WL2_LIBS@
@@ -49,6 +51,8 @@ BUILT_SOURCES += \
  lib/ecore_wl2/linux-dmabuf-unstable-v1-protocol.c \
  lib/ecore_wl2/linux-dmabuf-unstable-v1-client-protocol.h \
  lib/ecore_wl2/session-recovery-protocol.c \
- lib/ecore_wl2/session-recovery-client-protocol.h
+ lib/ecore_wl2/session-recovery-client-protocol.h \
+ lib/ecore_wl2/text-input-unstable-v1-client-protocol.h \
+ lib/ecore_wl2/text-input-unstable-v1-protocol.c
 
 endif