}
queue = wl_display_create_queue(display_wl);
- wl_proxy_set_queue((struct wl_proxy *) tec, queue);
+ if (queue)
+ {
+ wl_proxy_set_queue((struct wl_proxy *) tec, queue);
- tizen_embedded_compositor_get_socket(tec);
+ tizen_embedded_compositor_get_socket(tec);
- if (0 > wl_display_roundtrip_queue(display_wl, queue))
+ if (0 > wl_display_roundtrip_queue(display_wl, queue))
+ {
+ tizen_embedded_compositor_destroy(tec);
+ ERR("Fail to wl_display_roundtrip_queue");
+ return -1;
+ }
+ wl_event_queue_destroy(queue);
+ }
+ else
{
- ERR("Fail to wl_display_roundtrip_queue");
+ ERR("Fail to create wl_display queue");
+ tizen_embedded_compositor_destroy(tec);
return -1;
}
- wl_event_queue_destroy(queue);
+
tizen_embedded_compositor_destroy(tec);
return fd;
}