gl-renderer: gl_renderer_create display cleanup on error
Clean up display connection via eglTerminate() in case of EGL
initialisation error.
Signed-off-by: Dawid Gajownik <gajownik@gmail.com>
Reviewed-by: Pekka Paalanen <pekka.paalanen@collabora.co.uk>
diff --git a/src/gl-renderer.c b/src/gl-renderer.c
index fd0720e..d7231f4 100644
--- a/src/gl-renderer.c
+++ b/src/gl-renderer.c
@@ -2649,7 +2649,7 @@
if (egl_choose_config(gr, attribs, visual_id,
n_ids, &gr->egl_config) < 0) {
weston_log("failed to choose EGL config\n");
- goto fail;
+ goto fail_terminate;
}
ec->renderer = &gr->base;
@@ -2672,6 +2672,8 @@
fail_with_error:
gl_renderer_print_egl_error_state();
+fail_terminate:
+ eglTerminate(gr->egl_display);
fail:
free(gr);
return -1;