fix the bug touch don't work with a segment fault 02/14502/1 accepted/tizen/mobile/20140107.212858 submit/tizen/20140107.013332
authorLi,Limin <liminx.li@intel.com>
Mon, 6 Jan 2014 11:57:08 +0000 (19:57 +0800)
committerLi,Limin <liminx.li@intel.com>
Mon, 6 Jan 2014 12:13:32 +0000 (20:13 +0800)
call wl_pointer_set_cursor when touch the screen but
input->pointer is null.

see more info from:
    https://review.tizen.org:platform/upstream/ecore
    commit 6225104f422fbf2caaeeff8b7b7e43d335fff138
    commit 2acf73dd129549f2c93a2dcfe62518baf17415f5

bug:https://bugs.tizen.org/jira/browse/PTREL-562
Signed-off-by: Li,Limin <liminx.li@intel.com>
Change-Id: I8358525f45913f720a8475b11240c80a61263d51

src/lib/ecore_wayland/ecore_wl_input.c

index 0fc4e0d..a216f34 100644 (file)
@@ -151,7 +151,7 @@ ecore_wl_input_pointer_set(Ecore_Wl_Input *input, struct wl_surface *surface, in
 {
    LOGFN(__FILE__, __LINE__, __FUNCTION__);
 
-   if (input)
+   if (input && input->pointer)
      wl_pointer_set_cursor(input->pointer, input->pointer_enter_serial, 
                            surface, hot_x, hot_y);
 }
@@ -694,7 +694,8 @@ _ecore_wl_input_cb_pointer_enter(void *data, struct wl_pointer *pointer __UNUSED
    input->pointer_enter_serial = serial;
 
    /* The cursor on the surface is undefined until we set it */
-   ecore_wl_input_cursor_from_name_set(input, "left_ptr");
+   if (input->pointer)
+       ecore_wl_input_cursor_from_name_set(input, "left_ptr");
 
    if ((win = wl_surface_get_user_data(surface)))
      {