e-comp-wl-input: destroy xkb keyboard state Before destroying the keymap
authorChris Michael <cp.michael@samsung.com>
Wed, 1 Jul 2015 17:25:20 +0000 (13:25 -0400)
committerChris Michael <cp.michael@samsung.com>
Wed, 1 Jul 2015 17:25:20 +0000 (13:25 -0400)
Signed-off-by: Chris Michael <cp.michael@samsung.com>
src/bin/e_comp_wl_input.c

index b4e57b3..2e08418 100644 (file)
@@ -453,10 +453,6 @@ e_comp_wl_input_shutdown(void)
    /* destroy e_comp->wl_comp_data->kbd.keys array */
    wl_array_release(&e_comp->wl_comp_data->kbd.keys);
 
-   /* unreference any existing keymap */
-   if (e_comp->wl_comp_data->xkb.keymap)
-     xkb_map_unref(e_comp->wl_comp_data->xkb.keymap);
-
    /* unmap any existing keyboard area */
    if (e_comp->wl_comp_data->xkb.area)
      munmap(e_comp->wl_comp_data->xkb.area, e_comp->wl_comp_data->xkb.size);
@@ -466,6 +462,10 @@ e_comp_wl_input_shutdown(void)
    if (e_comp->wl_comp_data->xkb.state)
      xkb_state_unref(e_comp->wl_comp_data->xkb.state);
 
+   /* unreference any existing keymap */
+   if (e_comp->wl_comp_data->xkb.keymap)
+     xkb_map_unref(e_comp->wl_comp_data->xkb.keymap);
+
    /* unreference any existing context */
    if (e_comp->wl_comp_data->xkb.context)
      xkb_context_unref(e_comp->wl_comp_data->xkb.context);