From 3ed8182c76c61ae0296ac442546df142f1d75b00 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Christian=20K=C3=B6nig?= Date: Sat, 9 Jul 2011 00:00:10 +0200 Subject: [PATCH] [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. --- src/gallium/winsys/g3dvl/dri/dri_winsys.c | 16 ---------------- 1 file changed, 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); -- 2.30.2