summaryrefslogtreecommitdiff
path: root/opengl/libs/EGL/egl_object.cpp
diff options
context:
space:
mode:
authorMathias Agopian <mathias@google.com>2011-11-13 20:50:07 -0800
committerMathias Agopian <mathias@google.com>2011-11-14 17:40:21 -0800
commit274e03c90ee6054e81a16b1bd0a54258e08ddee9 (patch)
tree1ec08e7176e5253e7561d373e35cf572a1bafe18 /opengl/libs/EGL/egl_object.cpp
parent6b228af6ff20b3f592db4ad5662e1bc401d09b4d (diff)
fix crash when validating an invalid EGL objects
the code that validated EGL objects dereferenced the object to access its EGLDisplay -- needed for validation (!). This was wrong for two reasons, first we dereferenced the object before validating it (potentially leading to a crash), secondly we didn't validate that the object existed in the right EGLDisplay. We now use the EGLDisplay passed by the user API. Change-Id: I66f9e851d4f8507892a6b1fee3065f124c4e7138
Diffstat (limited to 'opengl/libs/EGL/egl_object.cpp')
-rw-r--r--opengl/libs/EGL/egl_object.cpp4
1 files changed, 2 insertions, 2 deletions
diff --git a/opengl/libs/EGL/egl_object.cpp b/opengl/libs/EGL/egl_object.cpp
index dbf9a010e0be..20cdc7eb408e 100644
--- a/opengl/libs/EGL/egl_object.cpp
+++ b/opengl/libs/EGL/egl_object.cpp
@@ -55,10 +55,10 @@ void egl_object_t::destroy() {
}
}
-bool egl_object_t::get() {
+bool egl_object_t::get(egl_display_t const* display, egl_object_t* object) {
// used by LocalRef, this does an incRef() atomically with
// checking that the object is valid.
- return display->getObject(this);
+ return display->getObject(object);
}
// ----------------------------------------------------------------------------