dix: NULL out WindowTable after freeing all the windows.

CloseDownDevices() tries to send PresenceNotify events. If the windows are
already freed, then we are accessing dangling pointers.
(cherry picked from commit aec485f2dc)
This commit is contained in:
Peter Hutterer 2008-04-24 13:29:46 +09:30 committed by Peter Hutterer
parent 5cb38a3fca
commit 476de585be

View File

@ -458,7 +458,10 @@ main(int argc, char *argv[], char *envp[])
#endif
config_fini();
memset(WindowTable, 0, MAXSCREENS * sizeof(WindowPtr));
CloseDownDevices();
for (i = screenInfo.numScreens - 1; i >= 0; i--)
{
FreeScratchPixmapsForScreen(i);