diff options
author | Keith Packard <keithp@keithp.com> | 2009-05-01 12:26:04 -0700 |
---|---|---|
committer | Keith Packard <keithp@keithp.com> | 2009-05-01 12:26:04 -0700 |
commit | e5e0fb846bda3e1757b89e50d5244d28457b9fe3 (patch) | |
tree | 6115e391878dd0094dd5d6ba000fd52bb96f3198 /src/i830_driver.c | |
parent | cfb98f3da936907945f48dad4c2345930f7beb60 (diff) |
Call down to lower CloseScreen before shutting down DRM allocator
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 <keithp@keithp.com>
Diffstat (limited to 'src/i830_driver.c')
-rw-r--r-- | 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 1ff58668..1887a518 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 |