summaryrefslogtreecommitdiffstats
path: root/src/glx/x11/glxcmds.c
diff options
context:
space:
mode:
authorKristian Høgsberg <[email protected]>2007-05-10 17:14:38 -0400
committerKristian Høgsberg <[email protected]>2007-10-10 17:07:26 -0400
commit4ff95e78e19e5902352ea3759d32d9f013255f42 (patch)
tree772c6e1c9b384bb2a19e929db47c872145043524 /src/glx/x11/glxcmds.c
parentb068af2f3b890bec26a186e9d0bdd3d44c17cd4d (diff)
Drop createDrawable and destroyDrawable fron DRIinterfaceMethods.
All the DRI driver did was call the createDrawable callback immediately upon entry to DRIscreen::createNewDrawable to get the drm_drawable_t. We can just call that before calling into the DRI driver and pass the returned drm_drawable_t as an argument to the DRI entry point. Likewise for destroyDrawable. Also, DRIdrawablePrivate::draw isn't used anywhere, and since the driver no longer needs the XID of the drawable we can now drop that.
Diffstat (limited to 'src/glx/x11/glxcmds.c')
-rw-r--r--src/glx/x11/glxcmds.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/glx/x11/glxcmds.c b/src/glx/x11/glxcmds.c
index 45ee93c5c3a..229da5a584e 100644
--- a/src/glx/x11/glxcmds.c
+++ b/src/glx/x11/glxcmds.c
@@ -85,7 +85,7 @@ static void GarbageCollectDRIDrawables(Display *dpy, int screen)
__GLXdisplayPrivate * const priv = __glXInitialize(dpy);
__GLXscreenConfigs *sc;
__DRIid draw;
- __DRIdrawable *pdraw;
+ __GLXdrawable *pdraw;
XWindowAttributes xwa;
int (*oldXErrorHandler)(Display *, XErrorEvent *);
@@ -105,7 +105,8 @@ static void GarbageCollectDRIDrawables(Display *dpy, int screen)
if (!windowExistsFlag) {
/* Destroy the local drawable data, if the drawable no
longer exists in the Xserver */
- (*pdraw->destroyDrawable)(pdraw->private);
+ (*pdraw->driDrawable.destroyDrawable)(pdraw->driDrawable.private);
+ XF86DRIDestroyDrawable(dpy, sc->scr, draw);
Xfree(pdraw);
}
} while (__glxHashNext(sc->drawHash, &draw, (void *)&pdraw) == 1);