diff --git a/render/picture.c b/render/picture.c index 3f4d01cadf..adad1f4a67 100644 --- a/render/picture.c +++ b/render/picture.c @@ -89,7 +89,7 @@ static void PictureScreenClose(CallbackListPtr *pcbl, ScreenPtr pScreen, void *u SetPictureScreen(pScreen, 0); free(ps->formats); free(ps); - dixScreenUnhookClose(pScreen, PictureScreenClose); + dixScreenUnhookPostClose(pScreen, PictureScreenClose); } static void @@ -683,7 +683,7 @@ PictureInit(ScreenPtr pScreen, PictFormatPtr formats, int nformats) pScreen->StoreColors = PictureStoreColors; dixScreenHookWindowDestroy(pScreen, picture_window_destructor); - dixScreenHookClose(pScreen, PictureScreenClose); + dixScreenHookPostClose(pScreen, PictureScreenClose); if (!PictureSetDefaultFilters(pScreen)) { PictureResetFilters(pScreen);