From 299e58d9f8ca9f7eda29c3548df72973e0fecc3e Mon Sep 17 00:00:00 2001 From: Pekka Paalanen Date: Thu, 12 Apr 2012 14:45:35 +0300 Subject: [PATCH] compositor: check queryString success During a bring-up of a new backend, it would be nice to get a real error message, when the EGL and GL contexts have not been properly set up. Signed-off-by: Pekka Paalanen --- src/compositor.c | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/src/compositor.c b/src/compositor.c index e0cba679..ac5e91c4 100644 --- a/src/compositor.c +++ b/src/compositor.c @@ -2380,6 +2380,11 @@ weston_compositor_init(struct weston_compositor *ec, struct wl_display *display) (void *) eglGetProcAddress("eglUnbindWaylandDisplayWL"); extensions = (const char *) glGetString(GL_EXTENSIONS); + if (!extensions) { + fprintf(stderr, "Retrieving GL extension string failed.\n"); + return -1; + } + if (!strstr(extensions, "GL_EXT_texture_format_BGRA8888")) { fprintf(stderr, "GL_EXT_texture_format_BGRA8888 not available\n"); @@ -2396,6 +2401,11 @@ weston_compositor_init(struct weston_compositor *ec, struct wl_display *display) extensions = (const char *) eglQueryString(ec->display, EGL_EXTENSIONS); + if (!extensions) { + fprintf(stderr, "Retrieving EGL extension string failed.\n"); + return -1; + } + if (strstr(extensions, "EGL_WL_bind_wayland_display")) ec->has_bind_display = 1; if (ec->has_bind_display)