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-08 13:33:17 -0800
commita2c4696bd48edf1041afa7d5033aa68686f2ed3f (patch)
tree68c01f8e464d5ffc36692be7755c221e0354bfeb
parentc94e53d72b967a1ded1ab87ec00b645e11b4ac2d (diff)
downloadqtlocation-mapboxgl-upstream/blacklist-binary-programs-for-vivante-gc4000.tar.gz
[core] blacklist binary program loading for Vivante GC4000 GPUsupstream/blacklist-binary-programs-for-vivante-gc4000
-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;
}