Leave allocator running until lower-level CloseScreens are done

The lower level close screen functions will free allocated objects, causing
a crash if the allocator isn't still available.

Signed-off-by: Keith Packard <keithp@keithp.com>
This commit is contained in:
Keith Packard 2009-05-01 11:46:51 -07:00
parent 1142353b48
commit 1872869e6f
1 changed files with 3 additions and 2 deletions

View File

@ -3079,7 +3079,6 @@ I830CloseScreen(int scrnIndex, ScreenPtr pScreen)
xf86_cursors_fini (pScreen);
i830_allocator_fini(pScrn);
i965_free_video(pScrn);
free(pI830->offscreenImages);
@ -3099,7 +3098,9 @@ I830CloseScreen(int scrnIndex, ScreenPtr pScreen)
pScrn->vtSema = FALSE;
pI830->closing = FALSE;
pScreen->CloseScreen = pI830->CloseScreen;
return (*pScreen->CloseScreen) (scrnIndex, pScreen);
(*pScreen->CloseScreen) (scrnIndex, pScreen);
i830_allocator_fini(pScrn);
return TRUE;
}
static ModeStatus