[Mesa-dev] [PATCH] mesa: fix glsl version mismatch in compat profile

Timothy Arceri tarceri at itsqueeze.com
Tue Apr 10 11:40:11 UTC 2018


Drivers that only support compat 3.0 were reporting GLSL 1.40
support. This fixes issues with the menu of Dawn of War II.

Fixes: a0c8b49284ef "mesa: enable OpenGL 3.1 with ARB_compatibility"

Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=105807
---
 src/mesa/main/version.c | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/src/mesa/main/version.c b/src/mesa/main/version.c
index 0a4e7630da6..84babd69e2f 100644
--- a/src/mesa/main/version.c
+++ b/src/mesa/main/version.c
@@ -620,8 +620,11 @@ _mesa_compute_version(struct gl_context *ctx)
    /* 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 (_mesa_is_desktop_gl(ctx) && ctx->Version >= 31) {
+   if (_mesa_is_desktop_gl(ctx)) {
       switch (ctx->Version) {
+      case 30:
+         ctx->Const.GLSLVersion = 130;
+         break;
       case 31:
          ctx->Const.GLSLVersion = 140;
          break;
@@ -629,7 +632,8 @@ _mesa_compute_version(struct gl_context *ctx)
          ctx->Const.GLSLVersion = 150;
          break;
       default:
-         ctx->Const.GLSLVersion = ctx->Version * 10;
+         if (ctx->Version >= 33)
+            ctx->Const.GLSLVersion = ctx->Version * 10;
          break;
       }
    }
-- 
2.17.0



More information about the mesa-dev mailing list