diff options
author | Thomas Hellstrom <[email protected]> | 2017-06-14 15:39:42 +0200 |
---|---|---|
committer | Thomas Hellstrom <[email protected]> | 2017-06-16 08:40:26 +0200 |
commit | a37eede540a69392f817162b0c37a992d59a0b17 (patch) | |
tree | 07f6393faa8301723aaf0acaa8aeb747a382334e /src/gallium | |
parent | 5732ac3eccdc750593d2c0d3a5348d709106cdbf (diff) |
svga: Fix incorrect format conversion blit destination
The blit.dst.resource member that was used as destination was
modified earlier in the function, effectively making us try to blit
the content onto itself. Fix this and also add a debug printout when the
format conversion blits fail.
Signed-off-by: Thomas Hellstrom <[email protected]>
Reviewed-by: Neha Bhende <[email protected]>
Diffstat (limited to 'src/gallium')
-rw-r--r-- | src/gallium/drivers/svga/svga_pipe_blit.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/src/gallium/drivers/svga/svga_pipe_blit.c b/src/gallium/drivers/svga/svga_pipe_blit.c index fd287a1815c..28996062ab3 100644 --- a/src/gallium/drivers/svga/svga_pipe_blit.c +++ b/src/gallium/drivers/svga/svga_pipe_blit.c @@ -547,6 +547,7 @@ try_blit(struct svga_context *svga, const struct pipe_blit_info *blit_info) blit.src.level, &blit.src.box, ©_region_blit); if (!try_copy_region(svga, ©_region_blit)) { + debug_printf("svga: Source blit format conversion failed.\n"); ret = false; goto done; } @@ -593,13 +594,14 @@ try_blit(struct svga_context *svga, const struct pipe_blit_info *blit_info) * A temporary resource was created for the blit, we need to * copy from the temporary resource back to the original destination. */ - build_blit_info(blit.dst.resource, + build_blit_info(dst, blit.dst.level, blit.dst.box.x, blit.dst.box.y, blit.dst.box.z, newDst, blit.dst.level, &blit.dst.box, ©_region_blit); if (!try_copy_region(svga, ©_region_blit)) { + debug_printf("svga: Destination blit format conversion failed.\n"); ret = false; goto done; } |