diff options
author | Paul Berry <[email protected]> | 2012-12-29 11:31:37 -0800 |
---|---|---|
committer | Paul Berry <[email protected]> | 2013-01-04 11:16:43 -0800 |
commit | 06f67e75ee7158e7f13860d07785e1cf3f8f4b13 (patch) | |
tree | ea6eb8ea87ffc2ccce79171ca080009cc69ed17f /src/mesa/drivers/dri/intel | |
parent | 48ac6d7e97b93258bc784f46bd5f875c70a4b3b9 (diff) |
i965: Fix glCompressedTexSubImage2D offsets for ETC textures.
This patch fixes intel_miptree_unmap_etc() (which decompresses ETC
textures to linear) to pay attention to map->x and map->y when writing
to the destination image. Previously these values were ignored,
causing the xoffset and yoffset parameters passed to
glCompressedTexSubImage2D() to be ignored.
Reviewed-by: Eric Anholt <[email protected]>
Reviewed-by: Ian Romanick <[email protected]>
Diffstat (limited to 'src/mesa/drivers/dri/intel')
-rw-r--r-- | src/mesa/drivers/dri/intel/intel_mipmap_tree.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/mesa/drivers/dri/intel/intel_mipmap_tree.c b/src/mesa/drivers/dri/intel/intel_mipmap_tree.c index 8d814bd6d4a..0c8e479cd68 100644 --- a/src/mesa/drivers/dri/intel/intel_mipmap_tree.c +++ b/src/mesa/drivers/dri/intel/intel_mipmap_tree.c @@ -1329,6 +1329,9 @@ intel_miptree_unmap_etc(struct intel_context *intel, uint32_t image_y; intel_miptree_get_image_offset(mt, level, slice, &image_x, &image_y); + image_x += map->x; + image_y += map->y; + uint8_t *dst = intel_region_map(intel, mt->region, map->mode) + image_y * mt->region->pitch * mt->region->cpp + image_x * mt->region->cpp; |