zink: fall back to util_blitter for scaled resolves

Vulkan can't scale while resolving using vkCmdResolveImage. For this we
need to use util_blitter.

The reason this wasn't a problem in the past, was that glBlitFramebuffer
always set pipe_blit_info::render_condition_enable, and we always used
that to bail out to util_blitter. When the latter changed, this broke.

Fixes: 19906022e2 ("zink: more accurately track supported blits")
Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7745>
This commit is contained in:
Erik Faye-Lund 2020-11-24 11:21:07 +01:00 committed by Marge Bot
parent 1c17223c02
commit c0286fc09b

View file

@ -17,6 +17,11 @@ blit_resolve(struct zink_context *ctx, const struct pipe_blit_info *info)
info->alpha_blend)
return false;
if (info->src.box.width != info->dst.box.width ||
info->src.box.height != info->dst.box.height ||
info->src.box.depth != info->dst.box.depth)
return false;
if (info->render_condition_enable &&
ctx->render_condition_active)
return false;