glsl: Only let a shader enable GL_ARB_draw_instanced if the driver supports it
Also make the GL_ARB_draw_instanced block follow the same pattern as the other blocks. Tested-by: Brian Paul <brianp@vmware.com> Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
This commit is contained in:
@@ -211,14 +211,13 @@ _mesa_glsl_process_extension(const char *name, YYLTYPE *name_locp,
|
||||
state->ARB_draw_buffers_warn = (ext_mode == extension_warn);
|
||||
}
|
||||
} else if (strcmp(name, "GL_ARB_draw_instanced") == 0) {
|
||||
state->ARB_draw_instanced_enable = (ext_mode != extension_disable);
|
||||
state->ARB_draw_instanced_warn = (ext_mode == extension_warn);
|
||||
|
||||
/* This extension is only supported in vertex shaders.
|
||||
*/
|
||||
if (state->target != vertex_shader) {
|
||||
unsupported = true;
|
||||
} else {
|
||||
state->ARB_draw_instanced_enable = (ext_mode != extension_disable);
|
||||
state->ARB_draw_instanced_warn = (ext_mode == extension_warn);
|
||||
}
|
||||
unsupported = (state->target != vertex_shader)
|
||||
|| !state->extensions->ARB_draw_instanced;
|
||||
} else if (strcmp(name, "GL_ARB_explicit_attrib_location") == 0) {
|
||||
state->ARB_explicit_attrib_location_enable =
|
||||
(ext_mode != extension_disable);
|
||||
|
Reference in New Issue
Block a user