diff --git a/autotests/openglinfosourcetest.cpp b/autotests/openglinfosourcetest.cpp --- a/autotests/openglinfosourcetest.cpp +++ b/autotests/openglinfosourcetest.cpp @@ -70,8 +70,9 @@ QTest::newRow("empty") << QString() << QString() << QString(); QTest::newRow("default") << QStringLiteral("3.0") << QString() << QStringLiteral("3.0"); QTest::newRow("mesa") << QStringLiteral("3.0 Mesa 17.1.1") << QStringLiteral("Mesa 17.1.1") << QStringLiteral("3.0"); - QTest::newRow("nvidia") << QStringLiteral("4.5 NVIDIA 375.26") << QStringLiteral("NVIDIA 375.26") << QStringLiteral("4.5");; - QTest::newRow("intel osx") << QStringLiteral("2.1 INTEL-10.25.13") << QStringLiteral("INTEL-10.25.13") << QStringLiteral("2.1");; + QTest::newRow("mesa compat") << QStringLiteral("4.5 (Compatibility Profile) Mesa 19.2.1") << QStringLiteral("Mesa 19.2.1") << QStringLiteral("4.5"); + QTest::newRow("nvidia") << QStringLiteral("4.5 NVIDIA 375.26") << QStringLiteral("NVIDIA 375.26") << QStringLiteral("4.5"); + QTest::newRow("intel osx") << QStringLiteral("2.1 INTEL-10.25.13") << QStringLiteral("INTEL-10.25.13") << QStringLiteral("2.1"); QTest::newRow("intel win") << QStringLiteral("4.3 - Build 20.19.15.4568") << QStringLiteral("Build 20.19.15.4568") << QStringLiteral("4.3"); } diff --git a/src/provider/core/openglinfosource_p.h b/src/provider/core/openglinfosource_p.h --- a/src/provider/core/openglinfosource_p.h +++ b/src/provider/core/openglinfosource_p.h @@ -153,6 +153,11 @@ return s.mid(1, s.size() - 2); if (s.startsWith(QLatin1String("- "))) return s.mid(2); + if (s.startsWith(QLatin1Char('('))) { + const auto idx = s.indexOf(QLatin1String(") ")); + if (idx > 0) + return s.mid(idx + 2); + } return s; } };