glsl/tests: fix segfault in uniform initializer test

Caused by 549222f5

Tested-by: Aaron Watry <awatry@gmail.com>
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=97286
This commit is contained in:
Timothy Arceri 2016-08-11 10:34:52 +10:00
parent 50b49d242d
commit 33b3815773

View file

@ -24,6 +24,7 @@
#include "main/compiler.h"
#include "main/mtypes.h"
#include "main/macros.h"
#include "program/hash_table.h"
#include "util/ralloc.h"
#include "uniform_initializer_utils.h"
@ -108,6 +109,7 @@ establish_uniform_storage(struct gl_shader_program *prog, unsigned num_storage,
+ type->components()));
const unsigned red_zone_components = total_components - data_components;
prog->UniformHash = new string_to_uint_map;
prog->UniformStorage = rzalloc_array(prog, struct gl_uniform_storage,
num_storage);
prog->NumUniformStorage = num_storage;
@ -128,6 +130,9 @@ establish_uniform_storage(struct gl_shader_program *prog, unsigned num_storage,
data_components,
red_zone_components);
prog->UniformHash->put(index_to_set,
prog->UniformStorage[index_to_set].name);
for (unsigned i = 0; i < num_storage; i++) {
if (i == index_to_set)
continue;