diff options
| author | Chia-I Wu <olvaffe@gmail.com> | 2009-08-19 13:00:25 +0800 | 
|---|---|---|
| committer | Brian Paul <brianp@vmware.com> | 2009-08-21 08:34:34 -0600 | 
| commit | 408db29792a2d57409f2604974e4398a3545a38f (patch) | |
| tree | d15a071c83e216b8d799f99912c307936f20f1cd | |
| parent | 9b3e5df900db465319ed4b5d4c4721e1986fb5a3 (diff) | |
egl: Check for null display in handle checking.
The display may be NULL when checking a handle.
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
| -rw-r--r-- | src/egl/main/egldisplay.c | 10 | ||||
| -rw-r--r-- | src/egl/main/egldisplay.h | 9 | 
2 files changed, 12 insertions, 7 deletions
| diff --git a/src/egl/main/egldisplay.c b/src/egl/main/egldisplay.c index 30a49a25ae..9b4227f545 100644 --- a/src/egl/main/egldisplay.c +++ b/src/egl/main/egldisplay.c @@ -305,9 +305,10 @@ _eglCheckDisplayHandle(EGLDisplay dpy)  EGLBoolean  _eglCheckContextHandle(EGLContext ctx, _EGLDisplay *dpy)  { -   _EGLContext *cur; +   _EGLContext *cur = NULL; -   cur = dpy->ContextList; +   if (dpy) +      cur = dpy->ContextList;     while (cur) {        if (cur == (_EGLContext *) ctx) {           assert(cur->Display == dpy); @@ -325,9 +326,10 @@ _eglCheckContextHandle(EGLContext ctx, _EGLDisplay *dpy)  EGLBoolean  _eglCheckSurfaceHandle(EGLSurface surf, _EGLDisplay *dpy)  { -   _EGLSurface *cur; +   _EGLSurface *cur = NULL; -   cur = dpy->SurfaceList; +   if (dpy) +      cur = dpy->SurfaceList;     while (cur) {        if (cur == (_EGLSurface *) surf) {           assert(cur->Display == dpy); diff --git a/src/egl/main/egldisplay.h b/src/egl/main/egldisplay.h index 6394c9cedb..20651e51ff 100644 --- a/src/egl/main/egldisplay.h +++ b/src/egl/main/egldisplay.h @@ -125,14 +125,17 @@ _eglCheckSurfaceHandle(EGLSurface surf, _EGLDisplay *dpy);  /* Only do a quick check.  This is NOT standard compliant. */  static INLINE EGLBoolean -_eglCheckDisplayHandle(EGLDisplay dpy) { return EGL_TRUE; } +_eglCheckDisplayHandle(EGLDisplay dpy) +{ +   return ((_EGLDisplay *) dpy != NULL); +}  static INLINE EGLBoolean  _eglCheckContextHandle(EGLContext ctx, _EGLDisplay *dpy)  {     _EGLContext *c = (_EGLContext *) ctx; -   return (c && c->Display == dpy); +   return (dpy && c && c->Display == dpy);  } @@ -140,7 +143,7 @@ static INLINE EGLBoolean  _eglCheckSurfaceHandle(EGLSurface surf, _EGLDisplay *dpy)  {     _EGLSurface *s = (_EGLSurface *) surf; -   return (s && s->Display == dpy); +   return (dpy && s && s->Display == dpy);  } | 
