[Mesa-dev] [PATCH 2/2] util: sipmlify PIPE_TEXTURE_CUBE case in util_max_layer()

Brian Paul brianp at vmware.com
Mon Sep 29 15:16:07 PDT 2014


For cube resources, the array_size value should be 6.  So handle
that case as we do for array texture resources.  But assert that
array_size==6 just to be safe.
---
 src/gallium/auxiliary/util/u_inlines.h |    5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/src/gallium/auxiliary/util/u_inlines.h b/src/gallium/auxiliary/util/u_inlines.h
index c80ec48..9540162 100644
--- a/src/gallium/auxiliary/util/u_inlines.h
+++ b/src/gallium/auxiliary/util/u_inlines.h
@@ -627,10 +627,11 @@ static INLINE unsigned
 util_max_layer(const struct pipe_resource *r, unsigned level)
 {
    switch (r->target) {
-   case PIPE_TEXTURE_CUBE:
-      return 6 - 1;
    case PIPE_TEXTURE_3D:
       return u_minify(r->depth0, level) - 1;
+   case PIPE_TEXTURE_CUBE:
+      assert(r->array_size == 6);
+      /* fall-through */
    case PIPE_TEXTURE_1D_ARRAY:
    case PIPE_TEXTURE_2D_ARRAY:
    case PIPE_TEXTURE_CUBE_ARRAY:
-- 
1.7.10.4



More information about the mesa-dev mailing list