summaryrefslogtreecommitdiff
path: root/libs/hwui/renderthread/EglManager.cpp
diff options
context:
space:
mode:
authorJohn Reck <jreck@google.com>2016-09-27 14:45:28 -0700
committerJohn Reck <jreck@google.com>2016-09-27 14:47:16 -0700
commit8733bff058e12075e50c15c0c56c20298cc5f44f (patch)
treeb96617b8ebcb16c35363e6303d666f14ea65d117 /libs/hwui/renderthread/EglManager.cpp
parentc31456de7af241d1a798d68369cffb749c7989d2 (diff)
Support EGL_KHR_partial_update without EGL_EXT_buffer_age
Bug: 31334677 Test: manual && hwuimacro --onscreen partialdamage Change-Id: I9b346b4053ec12c8a78a143a4dc0e708c44888a2
Diffstat (limited to 'libs/hwui/renderthread/EglManager.cpp')
-rw-r--r--libs/hwui/renderthread/EglManager.cpp7
1 files changed, 6 insertions, 1 deletions
diff --git a/libs/hwui/renderthread/EglManager.cpp b/libs/hwui/renderthread/EglManager.cpp
index ac6a28fe6289..86731c9581be 100644
--- a/libs/hwui/renderthread/EglManager.cpp
+++ b/libs/hwui/renderthread/EglManager.cpp
@@ -134,7 +134,12 @@ void EglManager::initialize() {
void EglManager::initExtensions() {
auto extensions = StringUtils::split(
eglQueryString(mEglDisplay, EGL_EXTENSIONS));
- EglExtensions.bufferAge = extensions.has("EGL_EXT_buffer_age");
+ // For our purposes we don't care if EGL_BUFFER_AGE is a result of
+ // EGL_EXT_buffer_age or EGL_KHR_partial_update as our usage is covered
+ // under EGL_KHR_partial_update and we don't need the expanded scope
+ // that EGL_EXT_buffer_age provides.
+ EglExtensions.bufferAge = extensions.has("EGL_EXT_buffer_age")
+ || extensions.has("EGL_KHR_partial_update");
EglExtensions.setDamage = extensions.has("EGL_KHR_partial_update");
LOG_ALWAYS_FATAL_IF(!extensions.has("EGL_KHR_swap_buffers_with_damage"),
"Missing required extension EGL_KHR_swap_buffers_with_damage");