X-Git-Url: http://git.kpe.io/?p=ctsim.git;a=blobdiff_plain;f=libctsupport%2Fsyserror.cpp;h=e59449f0161c5695a4efa4b471f5af34acadbc12;hp=dc3851cbbffb8507884ca8129ed7508d962ae683;hb=1e88cf0f7fa4f690ea9f110e8ed3f2b5338d0a10;hpb=99dd1d6ed10db1f669a5fe6af71225a50fc0ddfb diff --git a/libctsupport/syserror.cpp b/libctsupport/syserror.cpp index dc3851c..e59449f 100644 --- a/libctsupport/syserror.cpp +++ b/libctsupport/syserror.cpp @@ -2,7 +2,7 @@ ** This is part of the CTSim program ** Copyright (C) 1983-2000 Kevin Rosenberg ** -** $Id: syserror.cpp,v 1.1 2000/06/19 02:58:08 kevin Exp $ +** $Id: syserror.cpp,v 1.4 2000/08/25 15:59:13 kevin Exp $ ** ** This program is free software; you can redistribute it and/or modify ** it under the terms of the GNU General Public License (version 2) as @@ -19,10 +19,11 @@ ******************************************************************************/ #include +#include +#include #include #include -#include "kstddef.h" -#include "cio.h" +#include "ctsupport.h" /* NAME @@ -57,7 +58,7 @@ const static int MAX_ERROR_COUNT = 20; void sys_verror (int severity, const char *msg, va_list arg) { if (severity < errorlevel) - return; /* ignore error if less than max level */ + return; // ignore error if less than max level nErrorCount++; if (severity != ERR_FATAL) { @@ -87,12 +88,12 @@ void sys_verror (int severity, const char *msg, va_list arg) sys_error (ERR_FATAL, "illegal error code #%d [sys_error]", severity); } - vfprintf (stdout, msg, arg); - - cout << "\n"; + char errStr[512]; + vsnprintf (errStr, sizeof(errStr), msg, arg); + cout << errStr << endl; if (severity == ERR_FATAL) - exit(1); + throw runtime_error (errStr); #if INTERACTIVE_ERROR_DISPLAY cout << "A - Abort C - Continue W - Turn off warnings? ";