[mutter] cogl: Require {EXT,ARB}_framebuffer_object in the GL driver
- From: Georges Basile Stavracas Neto <gbsneto src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [mutter] cogl: Require {EXT,ARB}_framebuffer_object in the GL driver
- Date: Mon, 21 Oct 2019 21:51:10 +0000 (UTC)
commit 452325184925cd8f613d54142001644737715fce
Author: Adam Jackson <ajax redhat com>
Date: Thu Oct 17 17:24:14 2019 -0400
cogl: Require {EXT,ARB}_framebuffer_object in the GL driver
This was only promoted to core in 3.0, but Mesa's supported it
unconditionally since around 7.0 even in 2.1 contexts, so this is not a
particularly onerous requirement.
https://gitlab.gnome.org/GNOME/mutter/merge_requests/866
cogl/cogl/driver/gl/gl/cogl-driver-gl.c | 17 +++++++++++------
1 file changed, 11 insertions(+), 6 deletions(-)
---
diff --git a/cogl/cogl/driver/gl/gl/cogl-driver-gl.c b/cogl/cogl/driver/gl/gl/cogl-driver-gl.c
index 05161824c..d39b986a3 100644
--- a/cogl/cogl/driver/gl/gl/cogl-driver-gl.c
+++ b/cogl/cogl/driver/gl/gl/cogl-driver-gl.c
@@ -407,14 +407,19 @@ _cogl_driver_update_features (CoglContext *ctx,
COGL_FLAGS_SET (private_features,
COGL_PRIVATE_FEATURE_MESA_PACK_INVERT, TRUE);
- if (ctx->glGenRenderbuffers)
+ if (!ctx->glGenRenderbuffers)
{
- flags |= COGL_FEATURE_OFFSCREEN;
- COGL_FLAGS_SET (ctx->features, COGL_FEATURE_ID_OFFSCREEN, TRUE);
- COGL_FLAGS_SET (private_features,
- COGL_PRIVATE_FEATURE_QUERY_FRAMEBUFFER_BITS,
- TRUE);
+ g_set_error (error,
+ COGL_DRIVER_ERROR,
+ COGL_DRIVER_ERROR_NO_SUITABLE_DRIVER_FOUND,
+ "Framebuffer objects are required to use the GL driver");
+ return FALSE;
}
+ flags |= COGL_FEATURE_OFFSCREEN;
+ COGL_FLAGS_SET (ctx->features, COGL_FEATURE_ID_OFFSCREEN, TRUE);
+ COGL_FLAGS_SET (private_features,
+ COGL_PRIVATE_FEATURE_QUERY_FRAMEBUFFER_BITS,
+ TRUE);
if (ctx->glBlitFramebuffer)
COGL_FLAGS_SET (private_features,
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]