From 765661ba27fe287919ffce498187e539e8e39f10 Mon Sep 17 00:00:00 2001 From: Andrei Karas Date: Thu, 20 Aug 2015 23:56:17 +0300 Subject: Black list for DSA drivers from AMD HD 14.10.* --- src/graphicsmanager.cpp | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/src/graphicsmanager.cpp b/src/graphicsmanager.cpp index 59f7d6fd9..611b0eb5b 100644 --- a/src/graphicsmanager.cpp +++ b/src/graphicsmanager.cpp @@ -909,8 +909,17 @@ void GraphicsManager::initOpenGLFunctions() return; } - if (findI(mGlVendor, "NVIDIA") == std::string::npos && - mGlVersionString.find("Mesa 10.6.") == std::string::npos) + if (findI(mGlVendor, "NVIDIA") != std::string::npos || + mGlVersionString.find("Mesa 10.6.") != std::string::npos || + (findI(mGlVendor, "AMD Radeon HD") != std::string::npos && + mGlVersionString.find("Compatibility Profile Context 14.10") != + std::string::npos)) + { + logger->log1("Not checked for DSA because on " + "NVIDIA or AMD or in Mesa it broken"); + emulateFunction(glTextureSubImage2D); + } + else { // 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) @@ -936,12 +945,6 @@ void GraphicsManager::initOpenGLFunctions() emulateFunction(glTextureSubImage2D); } } - else - { - logger->log1("Not checked for DSA because on " - "NVIDIA or in Mesa it broken"); - emulateFunction(glTextureSubImage2D); - } if (is12 && (is42 || supportExtension("GL_ARB_texture_storage"))) { -- cgit v1.2.3-60-g2f50