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:49 -0800
commit50114c69e1e7e14c8e49cf49e062ed67a35c00e6 (patch)
treec60d66eee580fd0a7fad931b577dd6b45a5ba71d
parentcc25d6911bedacc420373566f10c14185a6fc0ce (diff)
downloadqtlocation-mapboxgl-upstream/release-agua__blacklist-binary-programs-for-vivante-gc4000.tar.gz
[core] blacklist binary program loading for Vivante GC4000 GPUsupstream/release-agua__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 22b446e6d0..d8ade8b8b8 100644
--- a/src/mbgl/gl/context.cpp
+++ b/src/mbgl/gl/context.cpp
@@ -270,10 +270,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;
}