mesa/main: Use flag for EXT_sRGB instead of EXT_framebuffer_sRGB where possible
authorGert Wollny <gert.wollny@collabora.com>
Wed, 14 Nov 2018 09:58:40 +0000 (10:58 +0100)
committerGert Wollny <gert.wollny@collabora.com>
Mon, 28 Jan 2019 11:18:40 +0000 (12:18 +0100)
All drivers that support EXT_framebuffer_sRGB also support EXT_sRGB, but
in order to keep this commit minial, and not to break any drivers both
flags are checked.

v2: - Use only EXT_sRGB (Ilia Mirkin)
    - Move adding the flag EXT_sRGB to gl_extensions to a separate patch

v3: use _mesa_has_EXT_framebuffer_sRGB instead of extension flag
    The _mesa_has function also checks for the correct versions and
    should be preferred over using the flags directly (Erik)

Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
src/mesa/main/fbobject.c
src/mesa/main/formatquery.c
src/mesa/main/framebuffer.c
src/mesa/main/teximage.c
src/mesa/state_tracker/st_manager.c

index 4ff00f2..f7597b8 100644 (file)
@@ -4274,7 +4274,7 @@ get_framebuffer_attachment_parameter(struct gl_context *ctx,
          }
       }
       else {
-         if (ctx->Extensions.EXT_framebuffer_sRGB) {
+         if (ctx->Extensions.EXT_sRGB) {
             *params =
                _mesa_get_format_color_encoding(att->Renderbuffer->Format);
          }
index 84b5f51..3b0f6da 100644 (file)
@@ -1241,7 +1241,7 @@ _mesa_GetInternalformativ(GLenum target, GLenum internalformat, GLenum pname,
       break;
 
    case GL_SRGB_WRITE:
-      if (!_mesa_has_EXT_framebuffer_sRGB(ctx) ||
+      if (!ctx->Extensions.EXT_sRGB ||
           !_mesa_is_color_format(internalformat)) {
          goto end;
       }
index 10dd2fd..0abfdd8 100644 (file)
@@ -459,7 +459,7 @@ _mesa_update_framebuffer_visual(struct gl_context *ctx,
             fb->Visual.rgbBits = fb->Visual.redBits
                + fb->Visual.greenBits + fb->Visual.blueBits;
             if (_mesa_get_format_color_encoding(fmt) == GL_SRGB)
-                fb->Visual.sRGBCapable = ctx->Extensions.EXT_framebuffer_sRGB;
+                fb->Visual.sRGBCapable = ctx->Extensions.EXT_sRGB;
             break;
          }
       }
index 21415b4..a43915e 100644 (file)
@@ -2438,7 +2438,7 @@ copytexture_error_check( struct gl_context *ctx, GLuint dimensions,
       bool rb_is_srgb = false;
       bool dst_is_srgb = false;
 
-      if (ctx->Extensions.EXT_framebuffer_sRGB &&
+      if (ctx->Extensions.EXT_sRGB &&
           _mesa_get_format_color_encoding(rb->Format) == GL_SRGB) {
          rb_is_srgb = true;
       }
index caf8799..5efbd1f 100644 (file)
@@ -476,7 +476,7 @@ st_framebuffer_create(struct st_context *st,
     * brings GLES on par with desktop GLs EXT_framebuffer_sRGB, in mesa this
     * is also expressed by using the same extension flag
     */
-   if (st->ctx->Extensions.EXT_framebuffer_sRGB) {
+   if (_mesa_has_EXT_framebuffer_sRGB(st->ctx)) {
       struct pipe_screen *screen = st->pipe->screen;
       const enum pipe_format srgb_format =
          util_format_srgb(stfbi->visual->color_format);