summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrei Karas <akaras@inbox.ru>2015-07-29 02:04:28 +0300
committerAndrei Karas <akaras@inbox.ru>2015-07-29 02:04:28 +0300
commit0de50d314ca7705024d1035802eaea2c43eb2848 (patch)
treeeb3ce2b254763986d7586ca0506d3c00abd02c81
parentdc6afb20dd1af4e9e3a8ff4d3f2f3fcf5cd87734 (diff)
downloadmanaplus-0de50d314ca7705024d1035802eaea2c43eb2848.tar.gz
manaplus-0de50d314ca7705024d1035802eaea2c43eb2848.tar.bz2
manaplus-0de50d314ca7705024d1035802eaea2c43eb2848.tar.xz
manaplus-0de50d314ca7705024d1035802eaea2c43eb2848.zip
Disable DSA OpenGL extensions for Mesa 10.6.x. Look like they broke it.
-rw-r--r--src/graphicsmanager.cpp7
1 files changed, 5 insertions, 2 deletions
diff --git a/src/graphicsmanager.cpp b/src/graphicsmanager.cpp
index d03090ad8..7ab166a17 100644
--- a/src/graphicsmanager.cpp
+++ b/src/graphicsmanager.cpp
@@ -907,8 +907,10 @@ void GraphicsManager::initOpenGLFunctions()
return;
}
- if (findI(mGlVendor, "NVIDIA") == std::string::npos)
+ if (findI(mGlVendor, "NVIDIA") == std::string::npos &&
+ mGlVersionString.find("Mesa 10.6.") == std::string::npos)
{ // not for NVIDIA. in NVIDIA atleast in windows drivers DSA is broken
+ // Mesa 10.6.3 show support for DSA, but it broken. Works in 10.7 dev
if (is45)
{
logger->log1("found GL_EXT_direct_state_access");
@@ -934,7 +936,8 @@ void GraphicsManager::initOpenGLFunctions()
}
else
{
- logger->log1("Not checked for DSA because on NVIDIA it broken");
+ logger->log1("Not checked for DSA because on "
+ "NVIDIA or in Mesa it broken");
emulateFunction(glTextureSubImage2D);
}