diff options
author | Brian Paul <brian.paul@tungstengraphics.com> | 2008-09-16 13:23:01 -0600 |
---|---|---|
committer | Brian Paul <brian.paul@tungstengraphics.com> | 2008-09-16 13:32:13 -0600 |
commit | 5b0f65245633553105e7dd0bcac4e96be9210694 (patch) | |
tree | a0e35d46da84dcbee3feadc36e4513d1fc625a2b | |
parent | 1be50e1638649b497fa6345e6d7dac620c976f90 (diff) |
mesa: fix display list regression (check if save->prim_count > 0 in vbo_save_EndList())
-rw-r--r-- | src/mesa/vbo/vbo_save_api.c | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/src/mesa/vbo/vbo_save_api.c b/src/mesa/vbo/vbo_save_api.c index f93ef3a02a..f69a33d817 100644 --- a/src/mesa/vbo/vbo_save_api.c +++ b/src/mesa/vbo/vbo_save_api.c @@ -1049,12 +1049,14 @@ void vbo_save_EndList( GLcontext *ctx ) /* EndList called inside a (saved) Begin/End pair? */ if (ctx->Driver.CurrentSavePrimitive != PRIM_OUTSIDE_BEGIN_END) { - GLint i = save->prim_count - 1; - ctx->Driver.CurrentSavePrimitive = PRIM_OUTSIDE_BEGIN_END; - save->prim[i].end = 0; - save->prim[i].count = (save->vert_count - - save->prim[i].start); + if (save->prim_count > 0) { + GLint i = save->prim_count - 1; + ctx->Driver.CurrentSavePrimitive = PRIM_OUTSIDE_BEGIN_END; + save->prim[i].end = 0; + save->prim[i].count = (save->vert_count - + save->prim[i].start); + } /* Make sure this vertex list gets replayed by the "loopback" * mechanism: |