From 5732ac3eccdc750593d2c0d3a5348d709106cdbf Mon Sep 17 00:00:00 2001 From: Thomas Hellstrom Date: Wed, 3 May 2017 05:26:02 -0700 Subject: [PATCH] svga: Fix srgb copy_region regression This fixes a tf2 srgb copy_region regression from "svga: Rework the blit and resource_copy_region functionality v3" Signed-off-by: Thomas Hellstrom Reviewed-by: Brian Paul --- src/gallium/drivers/svga/svga_pipe_blit.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/gallium/drivers/svga/svga_pipe_blit.c b/src/gallium/drivers/svga/svga_pipe_blit.c index ef5aeee..fd287a1 100644 --- a/src/gallium/drivers/svga/svga_pipe_blit.c +++ b/src/gallium/drivers/svga/svga_pipe_blit.c @@ -736,9 +736,12 @@ svga_resource_copy_region(struct pipe_context *pipe, /* Blits are format-converting which is not what we want, so perform a * strict format-check. - * FIXME: Also blits appear broken with 3D source textures. + * FIXME: Need to figure out why srgb blits (tf2) and + * 3D blits (piglit) are broken here. Perhaps we set up the + * struct pipe_blit_info incorrectly. */ if (src_tex->format == dst_tex->format && + !util_format_is_srgb(src_tex->format) && svga_resource_type(src_tex->target) != SVGA3D_RESOURCE_TEXTURE3D && try_blit(svga, &blit)) goto done; -- 2.7.4