summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/compiler/glsl/link_uniforms.cpp19
1 files changed, 16 insertions, 3 deletions
diff --git a/src/compiler/glsl/link_uniforms.cpp b/src/compiler/glsl/link_uniforms.cpp
index f0e229526f6..cb1655a97e0 100644
--- a/src/compiler/glsl/link_uniforms.cpp
+++ b/src/compiler/glsl/link_uniforms.cpp
@@ -685,11 +685,24 @@ public:
struct gl_uniform_storage *uniforms,
union gl_constant_value *values,
bool use_std430_as_default)
- : prog(prog), map(map), uniforms(uniforms),
- use_std430_as_default(use_std430_as_default), values(values),
- bindless_targets(NULL), bindless_access(NULL),
+ : buffer_block_index(0), ubo_byte_offset(0),
+ shader_type(MESA_SHADER_NONE),
+ prog(prog), map(map), uniforms(uniforms),
+ next_sampler(0), next_bindless_sampler(0), next_image(0),
+ next_bindless_image(0), next_subroutine(0),
+ use_std430_as_default(use_std430_as_default),
+ field_counter(0), current_var(NULL), explicit_location(0),
+ record_array_count(0), record_next_sampler(NULL),
+ record_next_image(NULL), record_next_bindless_sampler(NULL),
+ record_next_bindless_image(NULL),
+ values(values),
+ shader_samplers_used(0), shader_shadow_samplers(0),
+ num_bindless_samplers(0),
+ bindless_targets(NULL), num_bindless_images(0),
+ bindless_access(NULL),
shader_storage_blocks_write_access(0)
{
+ memset(this->targets, 0, sizeof(this->targets));
}
virtual ~parcel_out_uniform_storage()