diff options
Diffstat (limited to 'src/os/windows')
-rw-r--r-- | src/os/windows/crashlog_win.cpp | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/src/os/windows/crashlog_win.cpp b/src/os/windows/crashlog_win.cpp index 0d5b60040..30a4cf7db 100644 --- a/src/os/windows/crashlog_win.cpp +++ b/src/os/windows/crashlog_win.cpp @@ -18,6 +18,7 @@ #include "../../fileio_func.h" #include "../../strings_func.h" #include "../../gamelog.h" +#include "../../saveload/saveload.h" #include <windows.h> #include <signal.h> @@ -378,6 +379,15 @@ static LONG WINAPI ExceptionHandler(EXCEPTION_POINTERS *ep) ExitProcess(3); } + if (SaveloadCrashWithMissingNewGRFs()) { + static const TCHAR _saveload_crash[] = + _T("A serious fault condition occured in the game. The game will shut down.\n") + _T("As you loaded an savegame for which you do not have the required NewGRFs\n") + _T("no crash information will be generated.\n"); + MessageBox(NULL, _saveload_crash, _T("Fatal Application Failure"), MB_ICONERROR); + ExitProcess(3); + } + CrashLogWindows *log = new CrashLogWindows(ep); CrashLogWindows::current = log; log->FillCrashLog(log->crashlog, lastof(log->crashlog)); |