mesa pack: use _mesa_problem instead of assert
authorJordan Justen <jordan.l.justen@intel.com>
Wed, 20 Jun 2012 21:47:46 +0000 (14:47 -0700)
committerJordan Justen <jordan.l.justen@intel.com>
Sat, 21 Jul 2012 23:49:42 +0000 (16:49 -0700)
If the pack type is not supported, use _mesa_problem
rather than asserting.

Signed-off-by: Jordan Justen <jordan.l.justen@intel.com>
Reviewed-by: Brian Paul <brianp@vmware.com>
src/mesa/main/pack.c
src/mesa/main/pack_tmp.h

index a674f6831129836f900123eede7206610b106972..83192c1574c54bf4b2e4f243278bfee55d3aadae 100644 (file)
@@ -514,26 +514,29 @@ _mesa_pack_rgba_span_int(struct gl_context *ctx, GLuint n, GLuint rgba[][4],
 {
    switch(dstType) {
    case GL_UNSIGNED_INT:
-      pack_uint_from_uint_rgba(dstAddr, dstFormat, rgba, n);
+      pack_uint_from_uint_rgba(ctx, dstAddr, dstFormat, rgba, n);
       break;
    case GL_INT:
       /* No conversion necessary. */
-      pack_uint_from_uint_rgba(dstAddr, dstFormat, rgba, n);
+      pack_uint_from_uint_rgba(ctx, dstAddr, dstFormat, rgba, n);
       break;
    case GL_UNSIGNED_SHORT:
-      pack_ushort_from_uint_rgba(dstAddr, dstFormat, rgba, n);
+      pack_ushort_from_uint_rgba(ctx, dstAddr, dstFormat, rgba, n);
       break;
    case GL_SHORT:
-      pack_short_from_uint_rgba(dstAddr, dstFormat, rgba, n);
+      pack_short_from_uint_rgba(ctx, dstAddr, dstFormat, rgba, n);
       break;
    case GL_UNSIGNED_BYTE:
-      pack_ubyte_from_uint_rgba(dstAddr, dstFormat, rgba, n);
+      pack_ubyte_from_uint_rgba(ctx, dstAddr, dstFormat, rgba, n);
       break;
    case GL_BYTE:
-      pack_byte_from_uint_rgba(dstAddr, dstFormat, rgba, n);
+      pack_byte_from_uint_rgba(ctx, dstAddr, dstFormat, rgba, n);
       break;
    default:
-      assert(0);
+      _mesa_problem(ctx,
+         "Unsupported type (%s) for format (%s)",
+         _mesa_lookup_enum_by_nr(dstType),
+         _mesa_lookup_enum_by_nr(dstFormat));
       return;
    }
 }
index 83b65572998ba9eb0700bd36467678e32c8f205b..0d4eb387d8007c32067f1e95e085341a16fa58c3 100644 (file)
@@ -22,7 +22,8 @@
  */
 
 static void
-FN_NAME(DST_TYPE *dst,
+FN_NAME(struct gl_context *ctx,
+       DST_TYPE *dst,
        GLenum dstFormat,
        SRC_TYPE rgba[][4],
        int n)
@@ -111,5 +112,11 @@ FN_NAME(DST_TYPE *dst,
         dst[i*2+1] = SRC_CONVERT(rgba[i][ACOMP]);
       }
       break;
+
+   default:
+      _mesa_problem(ctx,
+         "Unsupported format (%s)",
+         _mesa_lookup_enum_by_nr(dstFormat));
+      break;
    }
 }