mesa: fix glDrawRangeElementsBaseVertex should be compiled into display list

It's defined in terms of glDrawRangeElements, which is compiled into display
lists.

Cc: stable
Acked-by: Adam Jackson <ajax@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18223>
This commit is contained in:
Marek Olšák 2022-08-23 14:57:56 -04:00 committed by Marge Bot
parent 7556ee1fe4
commit 355d575820
3 changed files with 17 additions and 2 deletions

View file

@ -16,7 +16,7 @@
<param name="basevertex" type="GLint"/>
</function>
<function name="DrawRangeElementsBaseVertex" es2="3.2" marshal="custom">
<function name="DrawRangeElementsBaseVertex" es2="3.2" marshal="custom" exec="dlist">
<param name="mode" type="GLenum"/>
<param name="start" type="GLuint"/>
<param name="end" type="GLuint"/>

View file

@ -1198,7 +1198,7 @@ _mesa_marshal_DrawRangeElementsBaseVertex(GLenum mode, GLuint start, GLuint end,
GLsizei count, GLenum type,
const GLvoid *indices, GLint basevertex)
{
draw_elements(mode, count, type, indices, 1, basevertex, 0, true, start, end, false);
draw_elements(mode, count, type, indices, 1, basevertex, 0, true, start, end, true);
}
void GLAPIENTRY

View file

@ -1874,6 +1874,21 @@ save_DrawRangeElements(GLenum mode, GLuint start, GLuint end,
save_DrawElements(mode, count, type, indices);
}
void GLAPIENTRY
save_DrawRangeElementsBaseVertex(GLenum mode, GLuint start, GLuint end,
GLsizei count, GLenum type,
const GLvoid *indices, GLint basevertex)
{
GET_CURRENT_CONTEXT(ctx);
if (end < start) {
_mesa_compile_error(ctx, GL_INVALID_VALUE,
"glDrawRangeElementsBaseVertex(end < start)");
return;
}
save_DrawElementsBaseVertex(mode, count, type, indices, basevertex);
}
void GLAPIENTRY
save_MultiDrawElementsEXT(GLenum mode, const GLsizei *count, GLenum type,