From cd2132f45b8aba7a47502d864b51c11519b4a8f0 Mon Sep 17 00:00:00 2001 From: Jason Ekstrand Date: Wed, 30 Sep 2015 15:19:49 -0700 Subject: [PATCH] glsl/types: Make subroutine types have a single matrix column That way, if we do the usual thing of multiplying vector_elements by matrix_columns we get the actual number of components in the type as per component_slots(). While we're at it, we also switch to using the actual C++ field initializers for vector_elements and matrix_columns. Reviewed-by: Dave Airlie Reviewed-by: Iago Toral Quiroga --- src/glsl/glsl_types.cpp | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/glsl/glsl_types.cpp b/src/glsl/glsl_types.cpp index 8586b2e..25927f6 100644 --- a/src/glsl/glsl_types.cpp +++ b/src/glsl/glsl_types.cpp @@ -172,7 +172,7 @@ glsl_type::glsl_type(const char *subroutine_name) : base_type(GLSL_TYPE_SUBROUTINE), sampler_dimensionality(0), sampler_shadow(0), sampler_array(0), sampler_type(0), interface_packing(0), - vector_elements(0), matrix_columns(0), + vector_elements(1), matrix_columns(1), length(0) { mtx_lock(&glsl_type::mutex); @@ -180,7 +180,6 @@ glsl_type::glsl_type(const char *subroutine_name) : init_ralloc_type_ctx(); assert(subroutine_name != NULL); this->name = ralloc_strdup(this->mem_ctx, subroutine_name); - this->vector_elements = 1; mtx_unlock(&glsl_type::mutex); } -- 2.7.4