summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJesse Hall <jessehall@google.com>2016-09-28 11:26:57 -0700
committerJesse Hall <jessehall@google.com>2016-09-28 14:30:54 -0700
commitd6e9946cdd57a92c9bc86ba97a4ca42078153008 (patch)
tree1a1b22c76ae8b2eb9d12143a8e1a1e49b1500e58
parentd3b809baff20a2ff7e41f4add801f71cce0665f7 (diff)
downloadnative-d6e9946cdd57a92c9bc86ba97a4ca42078153008.tar.gz
EGL: check that display is still valid
Bug: 31522731 Change-Id: I84d82e55aba5b58dfdbcac9e208c36767fbedfd1
-rw-r--r--opengl/libs/EGL/egl_display.cpp5
1 files changed, 4 insertions, 1 deletions
diff --git a/opengl/libs/EGL/egl_display.cpp b/opengl/libs/EGL/egl_display.cpp
index e335a6cc31..1e39aae40d 100644
--- a/opengl/libs/EGL/egl_display.cpp
+++ b/opengl/libs/EGL/egl_display.cpp
@@ -66,7 +66,10 @@ egl_display_t::~egl_display_t() {
egl_display_t* egl_display_t::get(EGLDisplay dpy) {
uintptr_t index = uintptr_t(dpy)-1U;
- return (index >= NUM_DISPLAYS) ? NULL : &sDisplay[index];
+ if (index >= NUM_DISPLAYS || !sDisplay[index].isValid()) {
+ return nullptr;
+ }
+ return &sDisplay[index];
}
void egl_display_t::addObject(egl_object_t* object) {