glsl/linker: link error on too many subroutine functions.
This fixes: GL45-CTS.explicit_uniform_location.subroutine-index-negative-link-max-num-of-indices Reviewed-by: Chris Forbes <chrisforbes@google.com> Signed-off-by: Dave Airlie <airlied@redhat.com>
This commit is contained in:
parent
18b0a13e80
commit
432ac19c1a
|
@ -4229,6 +4229,10 @@ link_assign_subroutine_types(struct gl_shader_program *prog)
|
||||||
if (!fn->num_subroutine_types)
|
if (!fn->num_subroutine_types)
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
|
if (sh->NumSubroutineFunctions + 1 > MAX_SUBROUTINES) {
|
||||||
|
linker_error(prog, "Too many subroutine functions declared.\n");
|
||||||
|
return;
|
||||||
|
}
|
||||||
sh->SubroutineFunctions = reralloc(sh, sh->SubroutineFunctions,
|
sh->SubroutineFunctions = reralloc(sh, sh->SubroutineFunctions,
|
||||||
struct gl_subroutine_function,
|
struct gl_subroutine_function,
|
||||||
sh->NumSubroutineFunctions + 1);
|
sh->NumSubroutineFunctions + 1);
|
||||||
|
|
Loading…
Reference in New Issue