# glDetachShader

Definition: | include pGUI.e include opengl.e glDetachShader(integer program, shader)
Description: | Detach a shader object from a program object program: Specifies the program object from which to detach the shader object. shader: Specifies the shader object to be detached.
pwa/p2js: | Not supported.
Notes: | glDetachShader() detaches the shader object specified by shader from the program object specified by program. This command can be used to undo the effect of the command glAttachShader(). If shader has already been flagged for deletion by a call to glDeleteShader() and it is not attached to any other program object, it will be deleted after it has been detached.
Errors: | GL_INVALID_VALUE is generated if either program or shader is not a value generated by OpenGL. GL_INVALID_OPERATION is generated if program is not a program object. GL_INVALID_OPERATION is generated if shader is not a shader object. GL_INVALID_OPERATION is generated if shader is not attached to program.
Associated Gets: | glGetAttachedShaders with the handle of a valid program object glGetShaderiv with arguments shader and GL_DELETE_STATUS glIsProgram glIsShader
See Also: | glAttachShader