From 0ac83a20010ae5fa1635866d1950f06aac15a46d Mon Sep 17 00:00:00 2001 From: =?utf8?q?Marek=20Ol=C5=A1=C3=A1k?= Date: Sat, 8 Dec 2012 22:48:47 +0100 Subject: [PATCH] mesa: disallow creation of GL 3.1 compatibility contexts Death to driver-specific hacks! Reviewed-by: Ian Romanick --- src/mesa/drivers/dri/intel/intel_extensions.c | 6 +----- src/mesa/main/version.c | 6 ++++++ src/mesa/state_tracker/st_extensions.c | 5 +---- 3 files changed, 8 insertions(+), 9 deletions(-) diff --git a/src/mesa/drivers/dri/intel/intel_extensions.c b/src/mesa/drivers/dri/intel/intel_extensions.c index 96288ab2fe1..df886a5cdfd 100755 --- a/src/mesa/drivers/dri/intel/intel_extensions.c +++ b/src/mesa/drivers/dri/intel/intel_extensions.c @@ -89,11 +89,7 @@ intelInitExtensions(struct gl_context *ctx) ctx->Extensions.ARB_texture_rgb10_a2ui = true; if (intel->gen >= 6) - if (ctx->API == API_OPENGL_CORE) { - ctx->Const.GLSLVersion = 140; - } else { - ctx->Const.GLSLVersion = 130; - } + ctx->Const.GLSLVersion = 140; else ctx->Const.GLSLVersion = 120; _mesa_override_glsl_version(ctx); diff --git a/src/mesa/main/version.c b/src/mesa/main/version.c index eef8f437d62..4373d7b9180 100644 --- a/src/mesa/main/version.c +++ b/src/mesa/main/version.c @@ -345,6 +345,12 @@ _mesa_compute_version(struct gl_context *ctx) switch (ctx->API) { case API_OPENGL_COMPAT: + /* Disable GLSL 1.40 and later for legacy contexts. + * This disallows creation of the GL 3.1 compatibility context. */ + if (ctx->Const.GLSLVersion > 130) { + ctx->Const.GLSLVersion = 130; + } + /* fall through */ case API_OPENGL_CORE: compute_version(ctx); break; diff --git a/src/mesa/state_tracker/st_extensions.c b/src/mesa/state_tracker/st_extensions.c index 93ef7a91cf7..726d86846a9 100644 --- a/src/mesa/state_tracker/st_extensions.c +++ b/src/mesa/state_tracker/st_extensions.c @@ -570,10 +570,7 @@ void st_init_extensions(struct st_context *st) glsl_feature_level = screen->get_param(screen, PIPE_CAP_GLSL_FEATURE_LEVEL); if (glsl_feature_level >= 140) { - if (ctx->API == API_OPENGL_CORE) - ctx->Const.GLSLVersion = 140; - else - ctx->Const.GLSLVersion = 130; + ctx->Const.GLSLVersion = 140; } else if (glsl_feature_level >= 130) { ctx->Const.GLSLVersion = 130; } else { -- 2.30.2