diff --git a/src/mesa/shader/shader_api.c b/src/mesa/shader/shader_api.c index 5e87bb4..f2813fc 100644 --- a/src/mesa/shader/shader_api.c +++ b/src/mesa/shader/shader_api.c @@ -1206,6 +1206,11 @@ get_uniform_rows_cols(const struct gl_program_parameter *p, *rows = 1; *cols = p->Size; } + else if (p->DataType == GL_FLOAT) { + /* probably an array of floats (this case is a hack, see bug 29823) */ + *rows = p->Size / 4; + *cols = 1; + } else { *rows = p->Size / 4 + 1; if (p->Size % 4 == 0)