From: Kenneth Graunke Date: Mon, 19 May 2014 05:26:59 +0000 (-0700) Subject: meta: Avoid _swrast_BlitFramebuffer in the meta CopyTexSubImage code. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=2ecc7268bacf5d240ddd4d341360bfb31f4dd04f;p=mesa.git meta: Avoid _swrast_BlitFramebuffer in the meta CopyTexSubImage code. This is a replacement for bd44ac8b5ca08016bb064b37edaec95eccfdbcd5 that should actually work. Fixes Piglit's copyteximage-border on swrast, as well as one of es3conform's packed_pixels_pixelstore test. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=78546 Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=77705 Signed-off-by: Kenneth Graunke Reviewed-by: Ian Romanick Reviewed-by: Chris Forbes Cc: "10.2" --- diff --git a/src/mesa/drivers/common/meta.c b/src/mesa/drivers/common/meta.c index f90d5bd424e..b194b6e71d5 100644 --- a/src/mesa/drivers/common/meta.c +++ b/src/mesa/drivers/common/meta.c @@ -2860,13 +2860,13 @@ copytexsubimage_using_blit_framebuffer(struct gl_context *ctx, GLuint dims, * are too strict for CopyTexImage. We know meta will be fine with format * changes. */ - _mesa_meta_and_swrast_BlitFramebuffer(ctx, x, y, - x + width, y + height, - xoffset, yoffset, - xoffset + width, yoffset + height, - mask, GL_NEAREST); + mask = _mesa_meta_BlitFramebuffer(ctx, x, y, + x + width, y + height, + xoffset, yoffset, + xoffset + width, yoffset + height, + mask, GL_NEAREST); ctx->Meta->Blit.no_ctsi_fallback = false; - success = true; + success = mask == 0x0; out: _mesa_lock_texture(ctx, texObj);