summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRussell King <rmk@arm.linux.org.uk>2014-03-20 17:13:46 +0000
committerRussell King <rmk@arm.linux.org.uk>2014-03-20 17:13:46 +0000
commitba36833fb4003407d2e895aa58536f0841a9a464 (patch)
treef1fea342786fe583bbe1c5c045fe1d0d2d7ed4c3
parent108a8d7559350901b2b06b0df60b2209fa260f53 (diff)
Ensure DRI2 is closed down at the right point
DRI2 is initialised before we hook the accelerator functions into the screen, so closing down DRI2 should happen after these functions have been unhooked from the screen for proper symmetry. Signed-off-by: Russell King <rmk@arm.linux.org.uk>
-rw-r--r--src/vivante.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/src/vivante.c b/src/vivante.c
index 04901a8..8127d3b 100644
--- a/src/vivante.c
+++ b/src/vivante.c
@@ -379,10 +379,6 @@ static Bool vivante_CloseScreen(CLOSE_SCREEN_ARGS_DECL)
PictureScreenPtr ps = GetPictureScreenIfSet(pScreen);
#endif
-#ifdef HAVE_DRI2
- vivante_dri2_CloseScreen(CLOSE_SCREEN_ARGS);
-#endif
-
#ifdef RENDER
/* Restore the Pointers */
ps->Composite = vivante->Composite;
@@ -405,6 +401,10 @@ static Bool vivante_CloseScreen(CLOSE_SCREEN_ARGS_DECL)
pScreen->BitmapToRegion = vivante->BitmapToRegion;
pScreen->BlockHandler = vivante->BlockHandler;
+#ifdef HAVE_DRI2
+ vivante_dri2_CloseScreen(CLOSE_SCREEN_ARGS);
+#endif
+
vivante_unmap_from_gpu(vivante, vivante->batch_info,
vivante->batch_handle);