diff options
author | Abdiel Janulgue <[email protected]> | 2013-01-25 15:37:00 +0200 |
---|---|---|
committer | Chad Versace <[email protected]> | 2013-02-01 11:58:12 -0800 |
commit | 8e2454c562ce9e6d06ba5e39c8e03097d3590c0e (patch) | |
tree | 49f2f8daae960ba72b95fb0e7779308485925e7e | |
parent | 11f5c82e8383fff00edd943209100cc1c9a1424b (diff) |
intel: Account for mt->offset in intel_miptree_map
We need to take account the offset from original bo when using glTexSubImage()
and other functions that manipulate the subregion of an exported texture.
Offsets are appended to mapped region address and when blitting from a source
region.
Reviewed-by: Eric Anholt <[email protected]>
Reviewed-by: Chad Versace <[email protected]>
Signed-off-by: Abdiel Janulgue <[email protected]>
-rw-r--r-- | src/mesa/drivers/dri/intel/intel_mipmap_tree.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/mesa/drivers/dri/intel/intel_mipmap_tree.c b/src/mesa/drivers/dri/intel/intel_mipmap_tree.c index 31abdad7207..3c4749f309b 100644 --- a/src/mesa/drivers/dri/intel/intel_mipmap_tree.c +++ b/src/mesa/drivers/dri/intel/intel_mipmap_tree.c @@ -1120,7 +1120,7 @@ intel_miptree_map_gtt(struct intel_context *intel, assert(y % bh == 0); y /= bh; - base = intel_region_map(intel, mt->region, map->mode); + base = intel_region_map(intel, mt->region, map->mode) + mt->offset; if (base == NULL) map->ptr = NULL; @@ -1180,7 +1180,7 @@ intel_miptree_map_blit(struct intel_context *intel, if (!intelEmitCopyBlit(intel, mt->region->cpp, mt->region->pitch, mt->region->bo, - 0, mt->region->tiling, + mt->offset, mt->region->tiling, map->stride, map->bo, 0, I915_TILING_NONE, x, y, |