diff options
author | Marek Olšák <[email protected]> | 2012-12-08 22:48:47 +0100 |
---|---|---|
committer | Marek Olšák <[email protected]> | 2012-12-12 13:09:54 +0100 |
commit | 0ac83a20010ae5fa1635866d1950f06aac15a46d (patch) | |
tree | e5fe61920b3cec79e76f314cfe053f91bffa810a | |
parent | 25409c6da8163d9acb386511aef0c11577c7aadb (diff) |
mesa: disallow creation of GL 3.1 compatibility contexts
Death to driver-specific hacks!
Reviewed-by: Ian Romanick <[email protected]>
-rwxr-xr-x | src/mesa/drivers/dri/intel/intel_extensions.c | 6 | ||||
-rw-r--r-- | src/mesa/main/version.c | 6 | ||||
-rw-r--r-- | 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 { |