From: Marek Olšák Date: Thu, 4 Sep 2014 13:03:31 +0000 (+0200) Subject: mesa: set UniformBooleanTrue = 1.0f by default X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=d67db73458c8d66861b97675660289a9555695ce;p=mesa.git mesa: set UniformBooleanTrue = 1.0f by default because NativeIntegers is 0 by default. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=82882 Cc: 10.2 10.3 mesa-stable@lists.freedesktop.org Reviewed-by: Brian Paul Reviewed-by: Matt Turner --- diff --git a/src/mesa/main/context.c b/src/mesa/main/context.c index fbdbd680a2e..8b5693e3771 100644 --- a/src/mesa/main/context.c +++ b/src/mesa/main/context.c @@ -653,6 +653,9 @@ _mesa_init_constants(struct gl_constants *consts, gl_api api) /* GL_ARB_framebuffer_object */ consts->MaxSamples = 0; + /* GLSL default if NativeIntegers == FALSE */ + consts->UniformBooleanTrue = FLT_AS_UINT(1.0f); + /* GL_ARB_sync */ consts->MaxServerWaitTimeout = 0x1fff7fffffffULL; diff --git a/src/mesa/main/macros.h b/src/mesa/main/macros.h index 422eb5aadaa..7b6148d0940 100644 --- a/src/mesa/main/macros.h +++ b/src/mesa/main/macros.h @@ -184,6 +184,13 @@ static inline GLfloat UINT_AS_FLT(GLuint u) return tmp.f; } +static inline unsigned FLT_AS_UINT(float f) +{ + fi_type tmp; + tmp.f = f; + return tmp.u; +} + /** * Convert a floating point value to an unsigned fixed point value. *