On Mon, Apr 27, 2015 at 2:11 PM, Ilia Mirkin <imir...@alum.mit.edu> wrote: > In some situations it is convenient for a driver to expose a higher GLSL > version while some extensions are still incomplete. However in that > situation, it would report a GLSL version that was higher than the GL > version. Avoid that situation by limiting the GLSL version to the GL > version. > > Signed-off-by: Ilia Mirkin <imir...@alum.mit.edu> > --- > > v1 -> v2: > do work in _mesa_compute_version, not in compute_version > only fix up core profile (easier and this situation doesn't come up for > compat) > > src/mesa/main/version.c | 11 +++++++++++ > 1 file changed, 11 insertions(+) > > diff --git a/src/mesa/main/version.c b/src/mesa/main/version.c > index da255b2..6024dc8 100644 > --- a/src/mesa/main/version.c > +++ b/src/mesa/main/version.c > @@ -483,6 +483,17 @@ _mesa_compute_version(struct gl_context *ctx) > > ctx->Version = _mesa_get_version(&ctx->Extensions, &ctx->Const, ctx->API); > > + /* Make sure that the GLSL version lines up with the GL version. In some > + * cases it can be too high, e.g. if an extension is missing. > + */ > + if (ctx->API == API_OPENGL_CORE) { > + switch (ctx->Version) { > + case 31: ctx->Const.GLSLVersion = 140; break; > + case 32: ctx->Const.GLSLVersion = 150; break;
I could be off here (not being ultra familiar w/ this bit of code), but shouldn't it be something like: ctx->Const.GLSLVersion = MAX2(ctx->Const.GLSLVersion, 140); (and so on) Also, not quite related to this patch, but is it just me or does GL version override not work w/ gles for some reason? BR, -R > + default: ctx->Const.GLSLVersion = ctx->Version * 10; break; > + } > + } > + > switch (ctx->API) { > case API_OPENGL_COMPAT: > case API_OPENGL_CORE: > -- > 2.0.5 > > _______________________________________________ > mesa-dev mailing list > mesa-dev@lists.freedesktop.org > http://lists.freedesktop.org/mailman/listinfo/mesa-dev _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev