aboutsummaryrefslogtreecommitdiffstats
path: root/src/gallium/winsys/g3dvl
diff options
context:
space:
mode:
authorChristian König <[email protected]>2011-07-09 00:00:10 +0200
committerChristian König <[email protected]>2011-07-09 00:00:10 +0200
commit3ed8182c76c61ae0296ac442546df142f1d75b00 (patch)
tree54c3903e216611d3cc44e552baaf9572757f2410 /src/gallium/winsys/g3dvl
parent34145ecdad8d6d3b14dc88dafd71b689c68de36c (diff)
[g3dvl] stop calling dri2DestroyDrawable
When switching channels with xine it sometimes happens that xine destroys the drawable before we get a chance to call DRI2DestroyDrawable, resulting in an x error.
Diffstat (limited to 'src/gallium/winsys/g3dvl')
-rw-r--r--src/gallium/winsys/g3dvl/dri/dri_winsys.c16
1 files changed, 0 insertions, 16 deletions
diff --git a/src/gallium/winsys/g3dvl/dri/dri_winsys.c b/src/gallium/winsys/g3dvl/dri/dri_winsys.c
index f854e924fa4..276731ca588 100644
--- a/src/gallium/winsys/g3dvl/dri/dri_winsys.c
+++ b/src/gallium/winsys/g3dvl/dri/dri_winsys.c
@@ -167,21 +167,6 @@ static int drawable_cmp(void *key1, void *key2)
return d1 != d2;
}
-static enum pipe_error
-drawable_destroy(void *key, void *value, void *data)
-{
- Drawable drawable = (Drawable)key;
- struct vl_dri_screen *vl_dri_scrn = (struct vl_dri_screen*)data;
-
- assert(drawable != None);
- assert(value);
- assert(data);
-
- dri2DestroyDrawable(vl_dri_scrn->dri_screen, drawable);
-
- return PIPE_OK;
-}
-
struct vl_screen*
vl_screen_create(Display *display, int screen)
{
@@ -226,7 +211,6 @@ void vl_screen_destroy(struct vl_screen *vscreen)
assert(vscreen);
- util_hash_table_foreach(vl_dri_scrn->drawable_table, drawable_destroy, vl_dri_scrn);
util_hash_table_destroy(vl_dri_scrn->drawable_table);
vl_dri_scrn->base.pscreen->destroy(vl_dri_scrn->base.pscreen);
dri2DestroyScreen(vl_dri_scrn->dri_screen);