diff options
author | Ian Romanick <ian.d.romanick@intel.com> | 2011-02-15 18:17:53 -0800 |
---|---|---|
committer | Ian Romanick <ian.d.romanick@intel.com> | 2011-02-15 18:22:33 -0800 |
commit | 25b36e8ff81a9c951085d6dd802a7534db476f5a (patch) | |
tree | e3f29647e029790be88f3cc32f2082b121b31ae4 /src/glsl/linker.cpp | |
parent | ae11707b830b206f4305310df3d873b72ed777a7 (diff) | |
download | external_mesa3d-25b36e8ff81a9c951085d6dd802a7534db476f5a.zip external_mesa3d-25b36e8ff81a9c951085d6dd802a7534db476f5a.tar.gz external_mesa3d-25b36e8ff81a9c951085d6dd802a7534db476f5a.tar.bz2 |
linker: Fix off-by-one error implicit array sizing
Arrays are zero based. If the highest element accessed is 6, the
array needs to have 7 elements.
Fixes piglit test glsl-fs-implicit-array-size-03 and bugzilla #34198.
NOTE: This is a candidate for the 7.9 and 7.10 branches.
Diffstat (limited to 'src/glsl/linker.cpp')
-rw-r--r-- | src/glsl/linker.cpp | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/glsl/linker.cpp b/src/glsl/linker.cpp index 46cd195..6c003bb 100644 --- a/src/glsl/linker.cpp +++ b/src/glsl/linker.cpp @@ -926,7 +926,7 @@ link_intrastage_shaders(void *mem_ctx, if (var->type->is_array() && (var->type->length == 0)) { const glsl_type *type = glsl_type::get_array_instance(var->type->fields.array, - var->max_array_access); + var->max_array_access + 1); assert(type != NULL); var->type = type; |