/* ================ Sys_Error ================ */ void Sys_Error (const char *error, ...) { static qbool inerror = false; va_list argptr; char text[1024]; sv_error = true; if (inerror) Sys_Exit (1); inerror = true; va_start (argptr,error); vsnprintf (text, sizeof(text), error, argptr); va_end (argptr); if (!(int)sys_nostdout.value) Sys_Printf ("ERROR: %s\n", text); if (logs[ERROR_LOG].sv_logfile) { SV_Write_Log (ERROR_LOG, 1, va ("ERROR: %s\n", text)); // fclose (logs[ERROR_LOG].sv_logfile); } // FIXME: hack - checking SV_Shutdown with net_socket set in -1 NET_Shutdown if (svs.socketip != -1) SV_Shutdown (va("ERROR: %s\n", text)); if ((int)sys_restart_on_error.value) Sys_Quit (true); Sys_Exit (1); }
/* ================ Sys_Error ================ */ void Sys_Error (const char *error, ...) { static qbool inerror = false; va_list argptr; char text[1024]; sv_error = true; if (inerror) Sys_Exit (1); inerror = true; va_start (argptr, error); vsnprintf (text, sizeof (text), error, argptr); va_end (argptr); #ifdef _CONSOLE if (!((int)sys_nostdout.value || isdaemon)) printf ("ERROR: %s\n", text); #else if (!(COM_CheckParm ("-noerrormsgbox") || isdaemon)) MessageBox (NULL, text, "Error", 0 /* MB_OK */ ); else Sys_Printf ("ERROR: %s\n", text); #endif if (logs[ERROR_LOG].sv_logfile) { SV_Write_Log (ERROR_LOG, 1, va ("ERROR: %s\n", text)); // fclose (logs[ERROR_LOG].sv_logfile); } // FIXME: hack - checking SV_Shutdown with svs.socketip set in -1 NET_Shutdown if (svs.socketip != -1) SV_Shutdown (va("ERROR: %s\n", text)); if ((int)sys_restart_on_error.value) Sys_Quit (true); Sys_Exit (1); }