src[i] is a union. Just check if src[i].u is non-zero to choose between ctx->Const.UniformBooleanTrue and zero. --- src/mesa/main/uniform_query.cpp | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-)
diff --git a/src/mesa/main/uniform_query.cpp b/src/mesa/main/uniform_query.cpp index 2ab5528..9ce45ee 100644 --- a/src/mesa/main/uniform_query.cpp +++ b/src/mesa/main/uniform_query.cpp @@ -785,11 +785,7 @@ _mesa_uniform(struct gl_context *ctx, struct gl_shader_program *shProg, const unsigned elems = components * count; for (unsigned i = 0; i < elems; i++) { - if (basicType == GLSL_TYPE_FLOAT) { - dst[i].i = src[i].f != 0.0f ? ctx->Const.UniformBooleanTrue : 0; - } else { - dst[i].i = src[i].i != 0 ? ctx->Const.UniformBooleanTrue : 0; - } + dst[i].i = src[i].u ? ctx->Const.UniformBooleanTrue : 0; } } -- 1.9.1 _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev