summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKonstantin Käfer <mail@kkaefer.com>2018-01-08 13:33:17 -0800
committerKonstantin Käfer <mail@kkaefer.com>2018-01-09 09:55:05 -0800
commit145a0ee6d0b9f544899bff4d4c67cbf91b470a75 (patch)
tree553083a7cb0064315a0325d589091cc2fc27e100
parent610fb87c76b2563581a8236dbaeeecac3d198454 (diff)
downloadqtlocation-mapboxgl-145a0ee6d0b9f544899bff4d4c67cbf91b470a75.tar.gz
[core] blacklist binary program loading for Vivante GC4000 GPUs
-rw-r--r--src/mbgl/gl/context.cpp5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/mbgl/gl/context.cpp b/src/mbgl/gl/context.cpp
index cc5aa014ed..7444ac112c 100644
--- a/src/mbgl/gl/context.cpp
+++ b/src/mbgl/gl/context.cpp
@@ -279,10 +279,13 @@ bool Context::supportsProgramBinaries() const {
// Blacklist Adreno 3xx, 4xx, and 5xx GPUs due to known bugs:
// https://bugs.chromium.org/p/chromium/issues/detail?id=510637
// https://chromium.googlesource.com/chromium/src/gpu/+/master/config/gpu_driver_bug_list.json#2316
+ // Blacklist Vivante GC4000 due to bugs when linking loaded programs:
+ // https://github.com/mapbox/mapbox-gl-native/issues/10704
const std::string renderer = reinterpret_cast<const char*>(glGetString(GL_RENDERER));
if (renderer.find("Adreno (TM) 3") != std::string::npos
|| renderer.find("Adreno (TM) 4") != std::string::npos
- || renderer.find("Adreno (TM) 5") != std::string::npos) {
+ || renderer.find("Adreno (TM) 5") != std::string::npos
+ || renderer.find("Vivante GC4000") != std::string::npos) {
return false;
}