diff options
author | Russell King <rmk@arm.linux.org.uk> | 2013-12-23 15:36:07 +0000 |
---|---|---|
committer | Russell King <rmk@arm.linux.org.uk> | 2013-12-23 15:36:07 +0000 |
commit | 8f8dd2e8fcd17c34028ca1cfafddb08ef3731845 (patch) | |
tree | 5a4451e4146d799d1828a17521b8331c60be8036 /src | |
parent | 80993e4b85286124b14aa3aa6e2ac6c0e072720f (diff) |
Fix segfault on X shutdown.
Freeing the vivante-held information on the screen pixmap after the
vivante acceleration backend leads to a segfault in the GALCORE
libraries. Avoid this by ensuring that this is done before the
backend is shutdown.
Signed-off-by: Russell King <rmk@arm.linux.org.uk>
Diffstat (limited to 'src')
-rw-r--r-- | src/armada_drm.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/src/armada_drm.c b/src/armada_drm.c index c3df7a4..d3ef0e3 100644 --- a/src/armada_drm.c +++ b/src/armada_drm.c @@ -385,8 +385,6 @@ static Bool armada_drm_ScreenInit(SCREEN_INIT_ARGS_DECL) if (!common_drm_PreScreenInit(pScreen)) return FALSE; - arm->CloseScreen = pScreen->CloseScreen; - pScreen->CloseScreen = armada_drm_CloseScreen; arm->CreateScreenResources = pScreen->CreateScreenResources; pScreen->CreateScreenResources = armada_drm_CreateScreenResources; @@ -396,6 +394,9 @@ static Bool armada_drm_ScreenInit(SCREEN_INIT_ARGS_DECL) arm->accel = FALSE; } + arm->CloseScreen = pScreen->CloseScreen; + pScreen->CloseScreen = armada_drm_CloseScreen; + if (!common_drm_PostScreenInit(pScreen)) return FALSE; |