diff --git a/compositor/compositor.c b/compositor/compositor.c index 8659344f..7261dc29 100644 --- a/compositor/compositor.c +++ b/compositor/compositor.c @@ -1398,6 +1398,7 @@ int wlsc_compositor_init(struct wlsc_compositor *ec, struct wl_display *display) { struct wl_event_loop *loop; + const char *extensions; ec->wl_display = display; @@ -1419,6 +1420,13 @@ wlsc_compositor_init(struct wlsc_compositor *ec, struct wl_display *display) screenshooter_create(ec); + extensions = (const char *) glGetString(GL_EXTENSIONS); + if (!strstr(extensions, "GL_EXT_texture_format_BGRA8888")) { + fprintf(stderr, + "GL_EXT_texture_format_BGRA8888 not available\n"); + return -1; + } + glGenFramebuffers(1, &ec->fbo); glBindFramebuffer(GL_FRAMEBUFFER, ec->fbo); glActiveTexture(GL_TEXTURE0);