ecore-wl2: add display object refs for windows
authorMike Blumenkrantz <zmike@osg.samsung.com>
Fri, 7 Jul 2017 20:26:50 +0000 (16:26 -0400)
committerMike Blumenkrantz <zmike@osg.samsung.com>
Fri, 7 Jul 2017 19:22:23 +0000 (15:22 -0400)
ensure the display lifetime exceeds the window lifetime

@fix

src/lib/ecore_wl2/ecore_wl2_window.c

index 4117e60..98f25dd 100644 (file)
@@ -608,6 +608,7 @@ ecore_wl2_window_new(Ecore_Wl2_Display *display, Ecore_Wl2_Window *parent, int x
    /* try to allocate space for window structure */
    win = calloc(1, sizeof(Ecore_Wl2_Window));
    if (!win) return NULL;
+   display->refs++;
 
    win->display = display;
    win->parent = parent;
@@ -744,6 +745,7 @@ ecore_wl2_window_free(Ecore_Wl2_Window *window)
    display->windows =
      eina_inlist_remove(display->windows, EINA_INLIST_GET(window));
 
+   ecore_wl2_display_disconnect(window->display);
    free(window);
 }