Mesa (master): st/mesa: only mark framebuffer as sRGB capable if Mesa supports the format

Brian Paul brianp at kemper.freedesktop.org
Fri Mar 7 22:45:19 UTC 2014


Module: Mesa
Branch: master
Commit: 9b322d540ae3f6b569465a22bef8b93c49b365d4
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=9b322d540ae3f6b569465a22bef8b93c49b365d4

Author: Brian Paul <brianp at vmware.com>
Date:   Fri Mar  7 10:53:03 2014 -0700

st/mesa: only mark framebuffer as sRGB capable if Mesa supports the format

Reviewed-by: José Fonseca <jfonseca at vmware.com>
Reviewed-by: Roland Scheidegger <sroland at vmware.com>

---

 src/mesa/state_tracker/st_manager.c |    5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/src/mesa/state_tracker/st_manager.c b/src/mesa/state_tracker/st_manager.c
index 68cb5de..314d342 100644
--- a/src/mesa/state_tracker/st_manager.c
+++ b/src/mesa/state_tracker/st_manager.c
@@ -421,8 +421,8 @@ st_framebuffer_create(struct st_context *st,
    /*
     * For desktop GL, sRGB framebuffer write is controlled by both the
     * capability of the framebuffer and GL_FRAMEBUFFER_SRGB.  We should
-    * advertise the capability when the pipe driver supports it so that
-    * applications can enable sRGB write when they want to.
+    * advertise the capability when the pipe driver (and core Mesa) supports
+    * it so that applications can enable sRGB write when they want to.
     *
     * This is not to be confused with GLX_FRAMEBUFFER_SRGB_CAPABLE_ARB.  When
     * the attribute is GLX_TRUE, it tells the st manager to pick a color
@@ -442,6 +442,7 @@ st_framebuffer_create(struct st_context *st,
          util_format_srgb(stfbi->visual->color_format);
 
       if (srgb_format != PIPE_FORMAT_NONE &&
+          st_pipe_format_to_mesa_format(srgb_format) != MESA_FORMAT_NONE &&
           screen->is_format_supported(screen, srgb_format,
                                       PIPE_TEXTURE_2D, stfbi->visual->samples,
                                       PIPE_BIND_RENDER_TARGET))




More information about the mesa-commit mailing list