Explorar el Código

mesa: add missing error check in _mesa_EndList()

If we're in GL_COMPILE_AND_EXECUTE mode and inside glBegin, calling
glEndList() should generate an error.

Fixes a failure in piglit's gl-1.0-beginend-coverage test.

Reviewed-by: Jose Fonseca <jfonseca@vmware.com>
tags/mesa-9.2-rc1
Brian Paul hace 12 años
padre
commit
94c7caf406
Se han modificado 1 ficheros con 6 adiciones y 0 borrados
  1. 6
    0
      src/mesa/main/dlist.c

+ 6
- 0
src/mesa/main/dlist.c Ver fichero

@@ -8652,6 +8652,12 @@ _mesa_EndList(void)
if (MESA_VERBOSE & VERBOSE_API)
_mesa_debug(ctx, "glEndList\n");

if (ctx->ExecuteFlag && _mesa_inside_dlist_begin_end(ctx)
&& ctx->Driver.CurrentSavePrimitive != PRIM_UNKNOWN) {
_mesa_error(ctx, GL_INVALID_OPERATION,
"glEndList() called inside glBegin/End");
}

/* Check that a list is under construction */
if (!ctx->ListState.CurrentList) {
_mesa_error(ctx, GL_INVALID_OPERATION, "glEndList");

Cargando…
Cancelar
Guardar