Better cleanup on display creation failure.
authorIskren Chernev <iskren.chernev@gmail.com>
Fri, 11 Mar 2011 12:19:00 +0000 (14:19 +0200)
committerKristian Høgsberg <krh@bitplanet.net>
Sun, 13 Mar 2011 02:56:13 +0000 (21:56 -0500)
wayland/wayland-server.c

index dece0d1..17b91ae 100644 (file)
@@ -528,6 +528,7 @@ wl_display_create(void)
 
        display->objects = wl_hash_table_create();
        if (display->objects == NULL) {
+               wl_event_loop_destroy(display->loop);
                free(display);
                return NULL;
        }
@@ -544,6 +545,7 @@ wl_display_create(void)
        wl_display_add_object(display, &display->object);
        if (wl_display_add_global(display, &display->object, NULL)) {
                wl_event_loop_destroy(display->loop);
+               wl_hash_table_destroy(display->objects);
                free(display);
                return NULL;
        }