From 672ed031ce1a9d74967772de380421f6a6cd7bac Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Stefan=20D=C3=B6singer?= Date: Mon, 22 Oct 2007 14:08:23 +0200 Subject: [PATCH] wined3d: Only glBindAttribLocation used attributes. --- dlls/wined3d/glsl_shader.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/dlls/wined3d/glsl_shader.c b/dlls/wined3d/glsl_shader.c index 14ac4e39e8e..7e79e274964 100644 --- a/dlls/wined3d/glsl_shader.c +++ b/dlls/wined3d/glsl_shader.c @@ -2697,8 +2697,10 @@ static void set_glsl_shader_program(IWineD3DDevice *iface, BOOL use_ps, BOOL use * in order to make the bindings work, and it has to be done prior * to linking the GLSL program. */ for (i = 0; i < max_attribs; ++i) { - snprintf(tmp_name, sizeof(tmp_name), "attrib%i", i); - GL_EXTCALL(glBindAttribLocationARB(programId, i, tmp_name)); + if (((IWineD3DBaseShaderImpl*)vshader)->baseShader.reg_maps.attributes[i]) { + snprintf(tmp_name, sizeof(tmp_name), "attrib%i", i); + GL_EXTCALL(glBindAttribLocationARB(programId, i, tmp_name)); + } } checkGLcall("glBindAttribLocationARB");