diff options
author | José Fonseca <[email protected]> | 2010-05-27 16:17:06 +0100 |
---|---|---|
committer | José Fonseca <[email protected]> | 2010-05-30 16:38:46 +0100 |
commit | 82715bb2279b0ddd063d41dd7d52e8fd76c921f4 (patch) | |
tree | 7bb24db47f56544c7a8c756da193ca724055b2a2 | |
parent | b57e18c35cf651addecdfb2339768fbb29c257f5 (diff) |
llvmpipe: Call llvmpipe_set_texture_tile_layout only when necessary.
Like the other places.
-rw-r--r-- | src/gallium/drivers/llvmpipe/lp_texture.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/gallium/drivers/llvmpipe/lp_texture.c b/src/gallium/drivers/llvmpipe/lp_texture.c index 5696683f454..d86056ca34c 100644 --- a/src/gallium/drivers/llvmpipe/lp_texture.c +++ b/src/gallium/drivers/llvmpipe/lp_texture.c @@ -1045,6 +1045,7 @@ llvmpipe_get_texture_image(struct llvmpipe_resource *lpr, lpr->tiles_per_row[level]); } else { + assert(layout == LP_TEX_LAYOUT_LINEAR); lp_tiled_to_linear(other_data, target_data, x * TILE_SIZE, y * TILE_SIZE, TILE_SIZE, TILE_SIZE, @@ -1054,8 +1055,9 @@ llvmpipe_get_texture_image(struct llvmpipe_resource *lpr, } } - llvmpipe_set_texture_tile_layout(lpr, face_slice, level, x, y, - new_layout); + if (new_layout != cur_layout) + llvmpipe_set_texture_tile_layout(lpr, face_slice, level, x, y, + new_layout); } } } |