glsl: Remove bogus check on return value of link_uniform_blocks().
A comment in link_intrastage_shaders(), and an if-test that followed it, seemed to indicate that link_uniform_blocks() would return a negative value in the event of an error. But this is not the case--all error checking has already been performed by validate_intrastage_interface_blocks(), and link_uniform_blocks() can only return unsigned values. So get rid of the if-test and change the return type of link_intrastage_shaders() to clarify that it can only return unsigned values. Reviewed-by: Jordan Justen <jordan.l.justen@intel.com> Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
This commit is contained in:
@@ -137,7 +137,7 @@ struct block {
|
||||
bool has_instance_name;
|
||||
};
|
||||
|
||||
int
|
||||
unsigned
|
||||
link_uniform_blocks(void *mem_ctx,
|
||||
struct gl_shader_program *prog,
|
||||
struct gl_shader **shader_list,
|
||||
|
@@ -964,12 +964,10 @@ link_intrastage_shaders(void *mem_ctx,
|
||||
num_shaders))
|
||||
return NULL;
|
||||
|
||||
/* Check that uniform blocks between shaders for a stage agree. */
|
||||
const int num_uniform_blocks =
|
||||
/* Link up uniform blocks defined within this stage. */
|
||||
const unsigned num_uniform_blocks =
|
||||
link_uniform_blocks(mem_ctx, prog, shader_list, num_shaders,
|
||||
&uniform_blocks);
|
||||
if (num_uniform_blocks < 0)
|
||||
return NULL;
|
||||
|
||||
/* Check that there is only a single definition of each function signature
|
||||
* across all shaders.
|
||||
|
@@ -53,7 +53,7 @@ extern bool
|
||||
link_uniform_blocks_are_compatible(const gl_uniform_block *a,
|
||||
const gl_uniform_block *b);
|
||||
|
||||
extern int
|
||||
extern unsigned
|
||||
link_uniform_blocks(void *mem_ctx,
|
||||
struct gl_shader_program *prog,
|
||||
struct gl_shader **shader_list,
|
||||
|
Reference in New Issue
Block a user