Commit: d34c5eec19ad828237cff0916cc23240d0c25aa1 Author: Jeroen Bakker Date: Thu Apr 16 10:39:30 2020 +0200 Branches: master https://developer.blender.org/rBd34c5eec19ad828237cff0916cc23240d0c25aa1
GPU: Fix Negative Shift glAttributes also include `gl_` names. These don't have a location and should be ignored during shader interface creation. Those internal names received a location of -1 and therefore the bitmasking was undefined. Users wouldn't notice this, but ASAN warned developers of this situation. ASAN could quit making ASAN un-usable as most shaders have this issue. Reviewed By: Clément Foucault` Differential Revision: https://developer.blender.org/D7448 =================================================================== M source/blender/gpu/intern/gpu_shader_interface.c =================================================================== diff --git a/source/blender/gpu/intern/gpu_shader_interface.c b/source/blender/gpu/intern/gpu_shader_interface.c index cb1cd9a6f6d..db8ec60fa9a 100644 --- a/source/blender/gpu/intern/gpu_shader_interface.c +++ b/source/blender/gpu/intern/gpu_shader_interface.c @@ -254,8 +254,11 @@ GPUShaderInterface *GPU_shaderinterface_create(int32_t program) } /* TODO: reject DOUBLE gl_types */ - input->location = glGetAttribLocation(program, name); + /* Ignore OpenGL names like `gl_BaseInstanceARB`, `gl_InstanceID` and `gl_VertexID`. */ + if (input->location == -1) { + continue; + } shaderface->enabled_attr_mask |= (1 << input->location); _______________________________________________ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org https://lists.blender.org/mailman/listinfo/bf-blender-cvs