Commit graph

12 commits

Author SHA1 Message Date
Christoph Oelckers
f52c217234 - moved all exception handling out of the backends
The main catch is now in D_DoomMain, only calling platform specific functions to handle the output for the error.

As a nice side effect, -norun can now be done without an exception, just by exiting D_DoomMain with a special exit code.

# Conflicts:
#	src/win32/i_main.cpp
2020-01-05 21:12:16 +01:00
Christoph Oelckers
e8332b299e - consolidated I_FatalError functions
This also removes the handling from thr Posix backend and will not compile on non-Windows.
2020-01-05 21:09:36 +01:00
Christoph Oelckers
c272315ca3 - new exception class for quitting the game
This will eventually replace the atexit mess, right now it isn't used.

# Conflicts:
#	src/doomerrors.h

# Conflicts:
#	src/doomerrors.h
2020-01-05 20:58:39 +01:00
drfrag
bcbf914f5b - Added I_Error prototypes to doomerrors.h. 2020-01-04 21:44:07 +01:00
alexey.lysiuk
9cf8be0259 - fixed compilation of POSIX targets
src/doomerrors.h:74:14: error: exception specification of overriding function is more lax than base version
src/posix/sdl/i_main.cpp:272:28: error: 'class std::exception' has no member named 'GetMessage'
2018-11-23 19:41:07 +01:00
Magnus Norddahl
7675e7a6dc - use std::runtime_error instead as the constructor on std::exception is a MSVC extension 2018-11-23 19:41:06 +01:00
Christoph Oelckers
831cfd5280 - made CDoomError inherit from std::exception so that the main catch block can also deal with exceptions thrown by the STL.
- Also do not ignore empty exception messages as irrelevant. The only irrelevant exception type is CNoRunExit.
2018-11-23 19:41:05 +01:00
Christoph Oelckers
1e01e6e4df - record all line numbers during function generation. This is useful for error reporting and eventually debugging.
- throw a useful exception when a VM abort occurs, the simple enum was incapable of reporting anything more than the barest minimum, which at least for array index out of bounds errors was insufficient.

The current exception mechanism is still insufficient. It really has to report a proper crash location and print a stack trace to the maximum extent possible. Instead it just prints a message and happily goes on. This is not a good solution.
2016-12-02 17:36:29 +01:00
Randy Heit
55142078d8 Normalize line endings 2016-03-01 09:47:10 -06:00
Randy Heit
c2aab5dd46 - Added the -norun parameter to quit the game just before video
initialization. To be used to check for errors in scripts without actually
  running the game.
- Added the -stdout parameter to the Windows version to send all output to
  a console, like the Linux version has done all along.


SVN r1486 (trunk)
2009-03-18 05:02:32 +00:00
Randy Heit
e2179d5c2d Guess what. It's not 2005 anymore.
SVN r184 (trunk)
2006-06-11 01:37:00 +00:00
Randy Heit
cf11cbdb30 Directory restructuring to make it easier to version projects that don't build zdoom.exe.
SVN r4 (trunk)
2006-02-24 04:48:15 +00:00