Lower level functions will destroy objects that are managed by the DRM allocator, so make sure those are done before the allocator shuts down.
Signed-off-by: Keith Packard <kei...@keithp.com> --- src/i830_driver.c | 6 ++++-- 1 files changed, 4 insertions(+), 2 deletions(-) diff --git a/src/i830_driver.c b/src/i830_driver.c index 1ff5866..1887a51 100644 --- a/src/i830_driver.c +++ b/src/i830_driver.c @@ -3085,6 +3085,9 @@ I830CloseScreen(int scrnIndex, ScreenPtr pScreen) free(pI830->offscreenImages); pI830->offscreenImages = NULL; + pScreen->CloseScreen = pI830->CloseScreen; + (*pScreen->CloseScreen) (scrnIndex, pScreen); + dri_bufmgr_destroy(pI830->bufmgr); pI830->bufmgr = NULL; @@ -3098,8 +3101,7 @@ I830CloseScreen(int scrnIndex, ScreenPtr pScreen) pScrn->PointerMoved = pI830->PointerMoved; pScrn->vtSema = FALSE; pI830->closing = FALSE; - pScreen->CloseScreen = pI830->CloseScreen; - return (*pScreen->CloseScreen) (scrnIndex, pScreen); + return TRUE; } static ModeStatus -- 1.6.2.4 ------------------------------------------------------------------------------ Register Now & Save for Velocity, the Web Performance & Operations Conference from O'Reilly Media. Velocity features a full day of expert-led, hands-on workshops and two days of sessions from industry leaders in dedicated Performance & Operations tracks. Use code vel09scf and Save an extra 15% before 5/3. http://p.sf.net/sfu/velocityconf -- _______________________________________________ Dri-devel mailing list Dri-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/dri-devel