summaryrefslogtreecommitdiff
path: root/src/gallium/drivers/r300
diff options
context:
space:
mode:
authorMarek Olšák <maraeo@gmail.com>2010-08-08 18:21:53 +0200
committerMarek Olšák <maraeo@gmail.com>2010-08-08 22:29:00 +0200
commit363b74f132a5a329fac25322f3c5c227c55b94a8 (patch)
treedfe6f9684c0ba20771b32593a5331fd52e1d7827 /src/gallium/drivers/r300
parent757c78afe7cca6a05c88c0c203fa5f4488ebd0ed (diff)
r300g: do not allocate a zmask block for 3D textures and cubemaps
Diffstat (limited to 'src/gallium/drivers/r300')
-rw-r--r--src/gallium/drivers/r300/r300_hyperz.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/gallium/drivers/r300/r300_hyperz.c b/src/gallium/drivers/r300/r300_hyperz.c
index 523d547ea9..3b0adc3584 100644
--- a/src/gallium/drivers/r300/r300_hyperz.c
+++ b/src/gallium/drivers/r300/r300_hyperz.c
@@ -338,6 +338,12 @@ void r300_zmask_alloc_block(struct r300_context *r300, struct r300_surface *surf
tex = r300_texture(surf->base.texture);
+ /* We currently don't handle decompression for 3D textures and cubemaps
+ * correctly. */
+ if (tex->desc.b.b.target != PIPE_TEXTURE_1D &&
+ tex->desc.b.b.target != PIPE_TEXTURE_2D)
+ return;
+
if (tex->zmask_mem[level])
return;