summaryrefslogtreecommitdiff
path: root/src/egl/main/egldisplay.c
diff options
context:
space:
mode:
authorChia-I Wu <olvaffe@gmail.com>2010-01-26 15:16:49 +0800
committerChia-I Wu <olvaffe@gmail.com>2010-01-26 18:46:05 +0800
commitf65ed0a3097d91289ced44d53786506333122b55 (patch)
tree2a0a14058f5b5bc5d1c91129ca0825fcd6051a2e /src/egl/main/egldisplay.c
parentd21ee93fdb817a96b47b5dd4be925e23c19bb5a7 (diff)
egl: Use a boolean to indicate whether a resource is linked.
An unlinked resource may still be a current resource such as current surfaces. There might still be a need to know which display the unlinked resource belongs to.
Diffstat (limited to 'src/egl/main/egldisplay.c')
-rw-r--r--src/egl/main/egldisplay.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/egl/main/egldisplay.c b/src/egl/main/egldisplay.c
index 359900ca2f..125909d2bc 100644
--- a/src/egl/main/egldisplay.c
+++ b/src/egl/main/egldisplay.c
@@ -242,7 +242,10 @@ _eglCheckResource(void *res, _EGLResourceType type, _EGLDisplay *dpy)
void
_eglLinkResource(_EGLResource *res, _EGLResourceType type, _EGLDisplay *dpy)
{
+ assert(!res->Display || res->Display == dpy);
+
res->Display = dpy;
+ res->IsLinked = EGL_TRUE;
res->Next = dpy->ResourceLists[type];
dpy->ResourceLists[type] = res;
}
@@ -271,5 +274,6 @@ _eglUnlinkResource(_EGLResource *res, _EGLResourceType type)
}
res->Next = NULL;
- res->Display = NULL;
+ /* do not reset res->Display */
+ res->IsLinked = EGL_FALSE;
}