mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-01-02 16:00:09 +01:00
egl: Untangle some spaghetti around _eglLookupDisplay
Only eglapi needs any of this. Reviewed-by: Eric Engestrom <eric@igalia.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18713>
This commit is contained in:
parent
1f94f28e8c
commit
b2ee2de1fb
3 changed files with 21 additions and 38 deletions
|
|
@ -272,6 +272,27 @@ _eglCheckSync(_EGLDisplay *disp, _EGLSync *s, const char *msg)
|
|||
}
|
||||
|
||||
|
||||
/**
|
||||
* Lookup a handle to find the linked display.
|
||||
* Return NULL if the handle has no corresponding linked display.
|
||||
*/
|
||||
static _EGLDisplay *
|
||||
_eglLookupDisplay(EGLDisplay dpy)
|
||||
{
|
||||
simple_mtx_lock(_eglGlobal.Mutex);
|
||||
|
||||
_EGLDisplay *cur = _eglGlobal.DisplayList;
|
||||
while (cur) {
|
||||
if (cur == (_EGLDisplay *) dpy)
|
||||
break;
|
||||
cur = cur->Next;
|
||||
}
|
||||
simple_mtx_unlock(_eglGlobal.Mutex);
|
||||
|
||||
return cur;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Lookup and lock a display.
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -374,26 +374,6 @@ _eglCleanupDisplay(_EGLDisplay *disp)
|
|||
}
|
||||
|
||||
|
||||
/**
|
||||
* Return EGL_TRUE if the given handle is a valid handle to a display.
|
||||
*/
|
||||
EGLBoolean
|
||||
_eglCheckDisplayHandle(EGLDisplay dpy)
|
||||
{
|
||||
_EGLDisplay *cur;
|
||||
|
||||
simple_mtx_lock(_eglGlobal.Mutex);
|
||||
cur = _eglGlobal.DisplayList;
|
||||
while (cur) {
|
||||
if (cur == (_EGLDisplay *) dpy)
|
||||
break;
|
||||
cur = cur->Next;
|
||||
}
|
||||
simple_mtx_unlock(_eglGlobal.Mutex);
|
||||
return (cur != NULL);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Return EGL_TRUE if the given resource is valid. That is, the display does
|
||||
* own the resource.
|
||||
|
|
|
|||
|
|
@ -254,28 +254,10 @@ extern void
|
|||
_eglCleanupDisplay(_EGLDisplay *disp);
|
||||
|
||||
|
||||
extern EGLBoolean
|
||||
_eglCheckDisplayHandle(EGLDisplay dpy);
|
||||
|
||||
|
||||
extern EGLBoolean
|
||||
_eglCheckResource(void *res, _EGLResourceType type, _EGLDisplay *disp);
|
||||
|
||||
|
||||
/**
|
||||
* Lookup a handle to find the linked display.
|
||||
* Return NULL if the handle has no corresponding linked display.
|
||||
*/
|
||||
static inline _EGLDisplay *
|
||||
_eglLookupDisplay(EGLDisplay dpy)
|
||||
{
|
||||
_EGLDisplay *disp = (_EGLDisplay *) dpy;
|
||||
if (!_eglCheckDisplayHandle(dpy))
|
||||
disp = NULL;
|
||||
return disp;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Return the handle of a linked display, or EGL_NO_DISPLAY.
|
||||
*/
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue