summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIvo van Dongen <info@ivovandongen.nl>2018-02-19 18:33:15 +0200
committerTobrun <tobrun@mapbox.com>2018-03-01 11:46:04 +0100
commiteec0db49e40f40e1545c8711cf8e394042862df3 (patch)
treedd04796d6cabd7ca00eab99bca9b952dcf7dd480
parentb00e92fa94bd2e23cf31e4244c1a9db9c7a462ea (diff)
downloadqtlocation-mapboxgl-eec0db49e40f40e1545c8711cf8e394042862df3.tar.gz
[core] blacklist vao usage on mali t720 (sapphire 650)
Avoids problems on (amongst others) Samsung Galaxy J3
-rw-r--r--src/mbgl/gl/context.cpp11
1 files changed, 9 insertions, 2 deletions
diff --git a/src/mbgl/gl/context.cpp b/src/mbgl/gl/context.cpp
index d1a37a861a..4b77954d12 100644
--- a/src/mbgl/gl/context.cpp
+++ b/src/mbgl/gl/context.cpp
@@ -249,10 +249,17 @@ UniqueTexture Context::createTexture() {
bool Context::supportsVertexArrays() const {
static bool blacklisted = []() {
- // Blacklist Adreno 2xx, 3xx as it crashes on glBuffer(Sub)Data
const std::string renderer = reinterpret_cast<const char*>(glGetString(GL_RENDERER));
+
+ Log::Info(Event::General, "GPU Identifier: %s", renderer.c_str());
+
+ // Blacklist Adreno 2xx, 3xx as it crashes on glBuffer(Sub)Data
+ // Blacklist ARM Mali-T720 (in some MT8163 chipsets) as it crashes on glBindVertexArray
return renderer.find("Adreno (TM) 2") != std::string::npos
- || renderer.find("Adreno (TM) 3") != std::string::npos;
+ || renderer.find("Adreno (TM) 3") != std::string::npos
+ || renderer.find("Mali-T720") != std::string::npos
+ || renderer.find("Sapphire 650") != std::string::npos;
+
}();
return !blacklisted &&