summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/mesa/main/dlist.h7
-rw-r--r--src/mesa/tnl/t_imm_dlist.c5
2 files changed, 7 insertions, 5 deletions
diff --git a/src/mesa/main/dlist.h b/src/mesa/main/dlist.h
index a8cd34d6128..e2dea892696 100644
--- a/src/mesa/main/dlist.h
+++ b/src/mesa/main/dlist.h
@@ -1,4 +1,4 @@
-/* $Id: dlist.h,v 1.10 2000/12/26 05:09:28 keithw Exp $ */
+/* $Id: dlist.h,v 1.11 2000/12/26 07:41:32 keithw Exp $ */
/*
* Mesa 3-D graphics library
@@ -34,8 +34,9 @@
#define ASSERT_OUTSIDE_SAVE_BEGIN_END_WITH_RETVAL(ctx, retval) \
do { \
- if (ctx->Driver.CurrentExecPrimitive != GL_POLYGON+1) { \
- gl_error( ctx, GL_INVALID_OPERATION, "begin/end" ); \
+ if (ctx->Driver.CurrentSavePrimitive < GL_POLYGON+1 || \
+ ctx->Driver.CurrentSavePrimitive == PRIM_INSIDE_UNKNOWN_PRIM) { \
+ _mesa_compile_error( ctx, GL_INVALID_OPERATION, "begin/end" ); \
return retval; \
} \
} while (0)
diff --git a/src/mesa/tnl/t_imm_dlist.c b/src/mesa/tnl/t_imm_dlist.c
index f5f3bca5cd9..9acd6ea1d79 100644
--- a/src/mesa/tnl/t_imm_dlist.c
+++ b/src/mesa/tnl/t_imm_dlist.c
@@ -1,4 +1,4 @@
-/* $Id: t_imm_dlist.c,v 1.1 2000/12/26 05:09:32 keithw Exp $ */
+/* $Id: t_imm_dlist.c,v 1.2 2000/12/26 07:41:32 keithw Exp $ */
/*
* Mesa 3-D graphics library
@@ -187,7 +187,7 @@ execute_compiled_cassette( GLcontext *ctx, void *data )
TNLvertexcassette *node = (TNLvertexcassette *)data;
struct immediate *IM = node->IM;
- FLUSH_VERTICES( ctx, 0 );
+/* FLUSH_VERTICES( ctx, 0 ); */
if (ctx->NewState)
gl_update_state(ctx);
@@ -369,6 +369,7 @@ _tnl_NewList( GLcontext *ctx, GLuint list, GLenum mode )
/* Set current Begin/End state to unknown:
*/
IM->BeginState = VERT_BEGIN_0;
+ ctx->Driver.CurrentSavePrimitive = PRIM_UNKNOWN;
}