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 8b9c9e97dfcd0d0052b9b255804b5ad78f8ea234..001927fe620363458c7c6928308a0931c7f0655a 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 bf050336228b2daa740435949f777b793c7b38d0..69b4b6ccec589b49f783331f584a926445486c1e 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