summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEric Anholt <eric@anholt.net>2008-09-16 17:01:06 -0700
committerEric Anholt <eric@anholt.net>2008-09-16 17:09:00 -0700
commit4a310d6bd3767d217c433112bc2945a2e001de4e (patch)
tree87de9f281dda4eb2cdcbd611909791cbc39e7f70
parentb0c6a0ee96cfdffc87310940961d4fee240eabc1 (diff)
intel: Destroy bufmgr in screen destroy, not context.
Caused server crashes on second context creation since 7e0bbdcf033981282978554c2e68ce48b55aa291. Bug #17600. (cherry picked from commit 904f31a62444d9f7e9b12ddafaa4beeb7fed6dfa)
-rw-r--r--src/mesa/drivers/dri/intel/intel_context.c2
-rw-r--r--src/mesa/drivers/dri/intel/intel_screen.c1
2 files changed, 1 insertions, 2 deletions
diff --git a/src/mesa/drivers/dri/intel/intel_context.c b/src/mesa/drivers/dri/intel/intel_context.c
index 33f459beff..8c48e6178c 100644
--- a/src/mesa/drivers/dri/intel/intel_context.c
+++ b/src/mesa/drivers/dri/intel/intel_context.c
@@ -673,8 +673,6 @@ intelDestroyContext(__DRIcontextPrivate * driContextPriv)
/* free the Mesa context */
_mesa_free_context_data(&intel->ctx);
-
- dri_bufmgr_destroy(intel->bufmgr);
}
}
diff --git a/src/mesa/drivers/dri/intel/intel_screen.c b/src/mesa/drivers/dri/intel/intel_screen.c
index b7f823b43f..776a0b7cf5 100644
--- a/src/mesa/drivers/dri/intel/intel_screen.c
+++ b/src/mesa/drivers/dri/intel/intel_screen.c
@@ -410,6 +410,7 @@ intelDestroyScreen(__DRIscreenPrivate * sPriv)
{
intelScreenPrivate *intelScreen = (intelScreenPrivate *) sPriv->private;
+ dri_bufmgr_destroy(intelScreen->bufmgr);
intelUnmapScreenRegions(intelScreen);
FREE(intelScreen);