mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2025-12-29 12:20:10 +01:00
main: Allow ctx == NULL in _mesa_validate_shader_target().
This will allow this function to be used in circumstances where there is no context available, such as when building built-in GLSL functions. Reviewed-by: Chris Forbes <chrisf@ijw.co.nz> Reviewed-by: Brian Paul <brianp@vmware.com>
This commit is contained in:
parent
6ab2a6148a
commit
020919b2ae
1 changed files with 10 additions and 3 deletions
|
|
@ -174,13 +174,20 @@ _mesa_copy_string(GLchar *dst, GLsizei maxLength,
|
|||
bool
|
||||
_mesa_validate_shader_target(const struct gl_context *ctx, GLenum type)
|
||||
{
|
||||
/* Note: when building built-in GLSL functions, this function may be
|
||||
* invoked with ctx == NULL. In that case, we can only validate that it's
|
||||
* a shader target we recognize, not that it's supported in the current
|
||||
* context. But that's fine--we don't need any further validation than
|
||||
* that when building built-in GLSL functions.
|
||||
*/
|
||||
|
||||
switch (type) {
|
||||
case GL_FRAGMENT_SHADER:
|
||||
return ctx->Extensions.ARB_fragment_shader;
|
||||
return ctx == NULL || ctx->Extensions.ARB_fragment_shader;
|
||||
case GL_VERTEX_SHADER:
|
||||
return ctx->Extensions.ARB_vertex_shader;
|
||||
return ctx == NULL || ctx->Extensions.ARB_vertex_shader;
|
||||
case GL_GEOMETRY_SHADER_ARB:
|
||||
return _mesa_has_geometry_shaders(ctx);
|
||||
return ctx == NULL || _mesa_has_geometry_shaders(ctx);
|
||||
default:
|
||||
return false;
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue