[Mesa-dev] [PATCH] st/mesa: only mark framebuffer as sRGB capable if Mesa supports the format

Roland Scheidegger sroland at vmware.com
Fri Mar 7 14:30:02 PST 2014


Am 07.03.2014 18:55, schrieb Brian Paul:
> ---
>  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))
> 

Looks good to me.

Roland


More information about the mesa-dev mailing list