]> code.ossystems Code Review - meta-freescale.git/commitdiff
weston: Touch events cause startup failure
authorTom Hochstein <tom.hochstein@nxp.com>
Mon, 16 Jan 2017 19:52:26 +0000 (13:52 -0600)
committerOtavio Salvador <otavio@ossystems.com.br>
Wed, 25 Jan 2017 16:28:30 +0000 (14:28 -0200)
Pressing the touch panel continously during boot up caused
weston to crash. The weston view was being accessed before it
was fully initialized, so now we guard against this.

Upstream-Status: Denied [Could not reproduce]

Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com>
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
recipes-graphics/wayland/weston/0019-MGS-1668-xwld-System-can-not-boot-up-to-desktop.patch [new file with mode: 0644]
recipes-graphics/wayland/weston/0020-xwayland-Fix-crash-when-run-with-no-input-device.patch [moved from recipes-graphics/wayland/weston/0019-xwayland-Fix-crash-when-run-with-no-input-device.patch with 100% similarity]
recipes-graphics/wayland/weston_%.bbappend

diff --git a/recipes-graphics/wayland/weston/0019-MGS-1668-xwld-System-can-not-boot-up-to-desktop.patch b/recipes-graphics/wayland/weston/0019-MGS-1668-xwld-System-can-not-boot-up-to-desktop.patch
new file mode 100644 (file)
index 0000000..09404ca
--- /dev/null
@@ -0,0 +1,44 @@
+From d3bc23ef2031e2749362bb0b90e5d164ef5d5942 Mon Sep 17 00:00:00 2001
+From: Meng Mingming <mingming.meng@nxp.com>
+Date: Mon, 9 Jan 2017 15:08:51 +0800
+Subject: [PATCH 4/6] MGS-1668: xwld: System can not boot up to desktop
+
+System can not boot up to desktop if press touch panel continuously during booting up.
+The weston view was not initialed completely, so add a protection to the pointer.
+
+Upstream Status: Inappropriate [i.MX specific]
+
+Date: MAR 08, 2016
+Signed-off-by: Yong Gan <yong.gan@nxp.com>
+---
+ src/compositor.c | 14 ++++++++------
+ 1 file changed, 8 insertions(+), 6 deletions(-)
+
+diff --git a/src/compositor.c b/src/compositor.c
+index b6ef7f3..9d9805d 100644
+--- a/src/compositor.c
++++ b/src/compositor.c
+@@ -1470,12 +1470,14 @@ weston_view_from_global_fixed(struct weston_view *view,
+ {
+       float vxf, vyf;
+-      weston_view_from_global_float(view,
+-                                    wl_fixed_to_double(x),
+-                                    wl_fixed_to_double(y),
+-                                    &vxf, &vyf);
+-      *vx = wl_fixed_from_double(vxf);
+-      *vy = wl_fixed_from_double(vyf);
++      if(view != NULL) {
++              weston_view_from_global_float(view,
++                                              wl_fixed_to_double(x),
++                                              wl_fixed_to_double(y),
++                                              &vxf, &vyf);
++              *vx = wl_fixed_from_double(vxf);
++              *vy = wl_fixed_from_double(vyf);
++      }
+ }
+ WL_EXPORT void
+-- 
+2.7.4
+
index dfd7da4498b26d0ff67a04d4a87e52d6464ea698..26b12dcddd29f49d28a44ce280360c0a01029999 100644 (file)
@@ -17,10 +17,11 @@ SRC_URI_append_imxgpu3d = " \
     file://0016-Link-compositor-to-egl.patch                               \
     file://0017-MGS-2343-ccc-XWLD-T3DStressTest_Wayland-displays-abn.patch \
     file://0018-MGS-2397-ccc-Enable-double-buffer-with-fb_pan_displa.patch \
+    file://0019-MGS-1668-xwld-System-can-not-boot-up-to-desktop.patch      \
 "
 
 SRC_URI_append = " \
-    file://0019-xwayland-Fix-crash-when-run-with-no-input-device.patch     \
+    file://0020-xwayland-Fix-crash-when-run-with-no-input-device.patch     \
 "
 
 # The 'egl' configuration of weston requires gles support, and consideration