Module: Mesa Branch: master Commit: 8ceb235c9cbb9504e32479db54287ed9387df75a URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=8ceb235c9cbb9504e32479db54287ed9387df75a
Author: Kenneth Graunke <[email protected]> Date: Mon Sep 5 12:03:29 2011 -0700 glsl/ir_reader: Make sure constants have the right number of components. The list of numbers in (constant type (<numbers>)) needs to contain exactly type->components() numbers (16 for a mat4, 3 for a vec3, etc.) Signed-off-by: Kenneth Graunke <[email protected]> Reviewed-by: Ian Romanick <[email protected]> --- src/glsl/ir_reader.cpp | 5 +++++ 1 files changed, 5 insertions(+), 0 deletions(-) diff --git a/src/glsl/ir_reader.cpp b/src/glsl/ir_reader.cpp index 22009ee..10bf72a 100644 --- a/src/glsl/ir_reader.cpp +++ b/src/glsl/ir_reader.cpp @@ -820,6 +820,11 @@ ir_reader::read_constant(s_expression *expr) } ++k; } + if (k != type->components()) { + ir_read_error(values, "expected %d constant values, found %d", + type->components(), k); + return NULL; + } return new(mem_ctx) ir_constant(type, &data); } _______________________________________________ mesa-commit mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/mesa-commit
