mesa: add KHR_no_error support to glDetachShader() and glDetachObjectARB()

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Timothy Arceri <tarceri@itsqueeze.com>
This commit is contained in:
Samuel Pitoiset 2017-07-19 14:42:07 +02:00
parent 6b9087a45d
commit ffe8813b02
3 changed files with 31 additions and 2 deletions

View File

@ -5334,7 +5334,7 @@
<glx ignore="true"/>
</function>
<function name="DetachShader" es2="2.0">
<function name="DetachShader" es2="2.0" no_error="true">
<param name="program" type="GLuint"/>
<param name="shader" type="GLuint"/>
<glx ignore="true"/>
@ -7681,7 +7681,7 @@
<glx ignore="true"/>
</function>
<function name="DetachObjectARB">
<function name="DetachObjectARB" no_error="true">
<param name="containerObj" type="GLhandleARB"/>
<param name="attachedObj" type="GLhandleARB"/>
<glx ignore="true"/>

View File

@ -504,6 +504,13 @@ detach_shader_error(struct gl_context *ctx, GLuint program, GLuint shader)
}
static void
detach_shader_no_error(struct gl_context *ctx, GLuint program, GLuint shader)
{
detach_shader(ctx, program, shader, true);
}
/**
* Return list of shaders attached to shader program.
*/
@ -1507,6 +1514,14 @@ _mesa_DeleteShader(GLuint name)
}
void GLAPIENTRY
_mesa_DetachObjectARB_no_error(GLhandleARB program, GLhandleARB shader)
{
GET_CURRENT_CONTEXT(ctx);
detach_shader_no_error(ctx, program, shader);
}
void GLAPIENTRY
_mesa_DetachObjectARB(GLhandleARB program, GLhandleARB shader)
{
@ -1515,6 +1530,14 @@ _mesa_DetachObjectARB(GLhandleARB program, GLhandleARB shader)
}
void GLAPIENTRY
_mesa_DetachShader_no_error(GLuint program, GLuint shader)
{
GET_CURRENT_CONTEXT(ctx);
detach_shader_no_error(ctx, program, shader);
}
void GLAPIENTRY
_mesa_DetachShader(GLuint program, GLuint shader)
{

View File

@ -95,6 +95,9 @@ _mesa_CreateShaderObjectARB(GLenum type);
extern void GLAPIENTRY
_mesa_DeleteObjectARB(GLhandleARB obj);
void GLAPIENTRY
_mesa_DetachObjectARB_no_error(GLhandleARB, GLhandleARB);
extern void GLAPIENTRY
_mesa_DetachObjectARB(GLhandleARB, GLhandleARB);
@ -193,6 +196,9 @@ _mesa_DeleteProgram(GLuint program);
extern void GLAPIENTRY
_mesa_DeleteShader(GLuint shader);
void GLAPIENTRY
_mesa_DetachShader_no_error(GLuint program, GLuint shader);
extern void GLAPIENTRY
_mesa_DetachShader(GLuint program, GLuint shader);