summaryrefslogtreecommitdiff
path: root/libs/hwui/renderthread/EglManager.cpp
diff options
context:
space:
mode:
authorMatt Sarett <msarett@google.com>2016-12-07 12:22:37 -0500
committerMatt Sarett <msarett@google.com>2017-02-14 14:39:00 -0500
commitb77c94a96abeeecf65c5b3292db679c049af6271 (patch)
tree96eb21220164a274d141bde7bffc0921c6213473 /libs/hwui/renderthread/EglManager.cpp
parentfd9d0ee9f82e2e224e14b05b6c8485670e46bd97 (diff)
Disable buffer age swap behavior for SkiaGL on Adreno gpus
Test: Verified that this fixes rendering bugs. BUG:31957043 Change-Id: I3e5bca73eae2d917906658f76d8c432dbb248d89
Diffstat (limited to 'libs/hwui/renderthread/EglManager.cpp')
-rw-r--r--libs/hwui/renderthread/EglManager.cpp5
1 files changed, 4 insertions, 1 deletions
diff --git a/libs/hwui/renderthread/EglManager.cpp b/libs/hwui/renderthread/EglManager.cpp
index 7020be073ee0..860725b37f8b 100644
--- a/libs/hwui/renderthread/EglManager.cpp
+++ b/libs/hwui/renderthread/EglManager.cpp
@@ -106,7 +106,10 @@ void EglManager::initialize() {
// Now that extensions are loaded, pick a swap behavior
if (Properties::enablePartialUpdates) {
- if (Properties::useBufferAge && EglExtensions.bufferAge) {
+ // An Adreno driver bug is causing rendering problems for SkiaGL with
+ // buffer age swap behavior (b/31957043). To temporarily workaround,
+ // we will use preserved swap behavior.
+ if (Properties::useBufferAge && EglExtensions.bufferAge && !Properties::isSkiaEnabled()) {
mSwapBehavior = SwapBehavior::BufferAge;
} else {
mSwapBehavior = SwapBehavior::Preserved;