void ddxGiveUp(enum ExitCode error) { int i; xf86VGAarbiterFini(); #ifdef XF86PM if (xf86OSPMClose) xf86OSPMClose(); xf86OSPMClose = NULL; #endif for (i = 0; i < xf86NumScreens; i++) { /* * zero all access functions to * trap calls when switched away. */ xf86Screens[i]->vtSema = FALSE; } #ifdef XFreeXDGA DGAShutdown(); #endif if (xorgHWOpenConsole) xf86CloseConsole(); xf86CloseLog(error); /* If an unexpected signal was caught, dump a core for debugging */ if (xf86Info.caughtSignal) OsAbort(); }
void FatalError(const char *f, ...) { va_list args; static Bool beenhere = FALSE; if (beenhere) ErrorF("\nFatalError re-entered, aborting\n"); else ErrorF("\nFatal server error:\n"); va_start(args, f); #ifdef __APPLE__ { va_list args2; va_copy(args2, args); (void)vsnprintf(__crashreporter_info_buff__, sizeof(__crashreporter_info_buff__), f, args2); va_end(args2); } #endif VErrorF(f, args); va_end(args); ErrorF("\n"); if (!beenhere) OsVendorFatalError(); if (!beenhere) { beenhere = TRUE; AbortServer(); } else OsAbort(); /*NOTREACHED*/ }
void AbortDDX(enum ExitCode error) { KdDisableScreens(); if (kdOsFuncs) { if (kdEnabled && kdOsFuncs->Disable) (*kdOsFuncs->Disable) (); if (kdOsFuncs->Fini) (*kdOsFuncs->Fini) (); KdDoSwitchCmd("stop"); } if (kdCaughtSignal) OsAbort(); }
void AbortServer(void) { #ifdef XF86BIGFONT XF86BigfontCleanup(); #endif CloseWellKnownConnections(); OsCleanup(TRUE); CloseDownDevices(); AbortDDX(EXIT_ERR_ABORT); fflush(stderr); if (CoreDump) OsAbort(); exit (1); }
void AbortDDX(enum ExitCode error) { OsAbort(); }