From 1e44599a43f6e9e35c4e951d55897c4e5a750fb9 Mon Sep 17 00:00:00 2001 From: Kenneth Graunke Date: Tue, 26 Apr 2016 01:44:51 -0700 Subject: [PATCH] i965: Fix MapTextureImage for multi-slice/level stencil buffers. We called intel_miptree_get_image_offset() to get the image offsets for the current level/slice, but then proceeded to ignore the results and clobber level/slice 0 every time. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=94713 Signed-off-by: Kenneth Graunke Reviewed-by: Ian Romanick Reviewed-by: Chris Forbes --- src/mesa/drivers/dri/i965/intel_mipmap_tree.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/mesa/drivers/dri/i965/intel_mipmap_tree.c b/src/mesa/drivers/dri/i965/intel_mipmap_tree.c index 4072bdf881b..3d8f48e93c1 100644 --- a/src/mesa/drivers/dri/i965/intel_mipmap_tree.c +++ b/src/mesa/drivers/dri/i965/intel_mipmap_tree.c @@ -2498,8 +2498,8 @@ intel_miptree_unmap_s8(struct brw_context *brw, for (uint32_t y = 0; y < map->h; y++) { for (uint32_t x = 0; x < map->w; x++) { ptrdiff_t offset = intel_offset_S8(mt->pitch, - x + map->x, - y + map->y, + image_x + x + map->x, + image_y + y + map->y, brw->has_swizzling); tiled_s8_map[offset] = untiled_s8_map[y * map->w + x]; } -- 2.30.2