more image type error checking in draw_stencil_pixels()
authorBrian Paul <brian.paul@tungstengraphics.com>
Tue, 19 Oct 1999 20:33:57 +0000 (20:33 +0000)
committerBrian Paul <brian.paul@tungstengraphics.com>
Tue, 19 Oct 1999 20:33:57 +0000 (20:33 +0000)
src/mesa/main/drawpix.c

index 02016d1..0b49428 100644 (file)
@@ -1,4 +1,4 @@
-/* $Id: drawpix.c,v 1.3 1999/10/08 09:27:10 keithw Exp $ */
+/* $Id: drawpix.c,v 1.4 1999/10/19 20:33:57 brianp Exp $ */
 
 /*
  * Mesa 3-D graphics library
@@ -487,6 +487,18 @@ static void draw_stencil_pixels( GLcontext *ctx, GLint x, GLint y,
    GLint i;
    const GLboolean zoom = ctx->Pixel.ZoomX!=1.0 || ctx->Pixel.ZoomY!=1.0;
 
+   if (image->Type != GL_BYTE &&
+       image->Type != GL_UNSIGNED_BYTE &&
+       image->Type != GL_SHORT &&
+       image->Type != GL_UNSIGNED_SHORT &&
+       image->Type != GL_INT &&
+       image->Type != GL_UNSIGNED_INT &&
+       image->Type != GL_FLOAT &&
+       image->Type != GL_BITMAP) {
+      gl_error( ctx, GL_INVALID_OPERATION, "glDrawPixels(stencil type)");
+      return;
+   }
+
    assert(image);
    assert(image->Format == GL_STENCIL_INDEX);
    assert(image->Type == GL_UNSIGNED_BYTE || image->Type == GL_BITMAP);