Issue CloseDownDevices() in os/log.c and remove from dix/main.c.

This ensures that all calls to FatalError() will shutdown the input devices.
This commit is contained in:
Alan Hourihane 2006-11-21 21:23:17 +00:00
parent ca2874b273
commit 33ff4cec5f
2 changed files with 2 additions and 5 deletions

View File

@ -415,7 +415,6 @@ main(int argc, char *argv[], char *envp[])
defaultFontPath); defaultFontPath);
} }
if (!SetDefaultFont(defaultTextFont)) { if (!SetDefaultFont(defaultTextFont)) {
CloseDownDevices();
FatalError("could not open default font '%s'", defaultTextFont); FatalError("could not open default font '%s'", defaultTextFont);
} }
#ifdef NULL_ROOT_CURSOR #ifdef NULL_ROOT_CURSOR
@ -425,13 +424,11 @@ main(int argc, char *argv[], char *envp[])
cm.yhot = 0; cm.yhot = 0;
if (!(rootCursor = AllocCursor(NULL, NULL, &cm, 0, 0, 0, 0, 0, 0))) { if (!(rootCursor = AllocCursor(NULL, NULL, &cm, 0, 0, 0, 0, 0, 0))) {
CloseDownDevices();
FatalError("could not create empty root cursor"); FatalError("could not create empty root cursor");
} }
AddResource(FakeClientID(0), RT_CURSOR, (pointer)rootCursor); AddResource(FakeClientID(0), RT_CURSOR, (pointer)rootCursor);
#else #else
if (!(rootCursor = CreateRootCursor(defaultCursorFont, 0))) { if (!(rootCursor = CreateRootCursor(defaultCursorFont, 0))) {
CloseDownDevices();
FatalError("could not open default cursor font '%s'", FatalError("could not open default cursor font '%s'",
defaultCursorFont); defaultCursorFont);
} }
@ -459,14 +456,12 @@ main(int argc, char *argv[], char *envp[])
#ifdef PANORAMIX #ifdef PANORAMIX
if (!noPanoramiXExtension) { if (!noPanoramiXExtension) {
if (!PanoramiXCreateConnectionBlock()) { if (!PanoramiXCreateConnectionBlock()) {
CloseDownDevices();
FatalError("could not create connection block info"); FatalError("could not create connection block info");
} }
} else } else
#endif #endif
{ {
if (!CreateConnectionBlock()) { if (!CreateConnectionBlock()) {
CloseDownDevices();
FatalError("could not create connection block info"); FatalError("could not create connection block info");
} }
} }

View File

@ -89,6 +89,7 @@ OR PERFORMANCE OF THIS SOFTWARE.
#include <stdlib.h> /* for malloc() */ #include <stdlib.h> /* for malloc() */
#include <errno.h> #include <errno.h>
#include "input.h"
#include "site.h" #include "site.h"
#include "opaque.h" #include "opaque.h"
@ -404,6 +405,7 @@ void
AbortServer(void) AbortServer(void)
{ {
OsCleanup(TRUE); OsCleanup(TRUE);
CloseDownDevices();
AbortDDX(); AbortDDX();
fflush(stderr); fflush(stderr);
if (CoreDump) if (CoreDump)