summaryrefslogtreecommitdiffstats
path: root/src/egl/drivers/dri2/egl_dri2.c
diff options
context:
space:
mode:
authorChad Versace <chadversary@chromium.org>2016-09-27 13:27:21 -0700
committerChad Versace <chadversary@chromium.org>2016-10-10 09:54:11 -0700
commit804488518296fbf20b06244bc0aa2e2793c61998 (patch)
tree5759f57e308fd03a37a6a96f143eb69b01776052 /src/egl/drivers/dri2/egl_dri2.c
parent0f99c0686e9f14238125b3b7b492d35eb2f4c023 (diff)
downloadexternal_mesa3d-804488518296fbf20b06244bc0aa2e2793c61998.zip
external_mesa3d-804488518296fbf20b06244bc0aa2e2793c61998.tar.gz
external_mesa3d-804488518296fbf20b06244bc0aa2e2793c61998.tar.bz2
egl: Unify the EGLint/EGLAttrib paths in eglCreateSync* (v3)
Pre-patch, there were two code paths for parsing EGLSync attribute lists: one path for old-style EGLint lists, used by eglCreateSyncKHR, and another for new-style EGLAttrib lists, used by eglCreateSync (1.5) and eglCreateSync64 (EGL_KHR_cl_event2). There were two attrib_list parsing functions, _eglParseSyncAttribList(_EGLSync *sync, const EGLint *attrib_list) _eglParseSyncAttribList64(_EGLSync *sync, const EGLattrib *attrib_list) This patch unifies the two attrib_list parsing functions into one, _eglParseSyncAttribList(_EGLSync *sync, const EGLattrib *attrib_list) Many internal EGLSync function signatures had *two* attrib_list parameters to accomodate both code paths: one parameter was an EGLint list and other an EGLAttrib list. At most one of the parameters was allowed to be non-null. This patch removes the `EGLint *attrib_list` parameter, leaving only the `EGLAttrib *attrib_list` parameter, for all internal EGLSync functions. v2: - Consistently use condition (sizeof(int_list[0]) == sizeof(attrib_list[0])). [for emil] v3: - Don't double-unlock the display in eglCreateSyncKHR. Reviewed-by: Emil Velikov <emil.velikov@collabora.com> (v2)
Diffstat (limited to 'src/egl/drivers/dri2/egl_dri2.c')
-rw-r--r--src/egl/drivers/dri2/egl_dri2.c6
1 files changed, 2 insertions, 4 deletions
diff --git a/src/egl/drivers/dri2/egl_dri2.c b/src/egl/drivers/dri2/egl_dri2.c
index 803627d..cd0a2e9 100644
--- a/src/egl/drivers/dri2/egl_dri2.c
+++ b/src/egl/drivers/dri2/egl_dri2.c
@@ -2509,8 +2509,7 @@ dri2_egl_unref_sync(struct dri2_egl_display *dri2_dpy,
static _EGLSync *
dri2_create_sync(_EGLDriver *drv, _EGLDisplay *dpy,
- EGLenum type, const EGLint *attrib_list,
- const EGLAttrib *attrib_list64)
+ EGLenum type, const EGLAttrib *attrib_list)
{
_EGLContext *ctx = _eglGetCurrentContext();
struct dri2_egl_display *dri2_dpy = dri2_egl_display(dpy);
@@ -2525,8 +2524,7 @@ dri2_create_sync(_EGLDriver *drv, _EGLDisplay *dpy,
return NULL;
}
- if (!_eglInitSync(&dri2_sync->base, dpy, type, attrib_list,
- attrib_list64)) {
+ if (!_eglInitSync(&dri2_sync->base, dpy, type, attrib_list)) {
free(dri2_sync);
return NULL;
}