|
54 | 54 | // deterministic or the same on all peers in multiplayer games.
|
55 | 55 | //#define INCLUDE_DEBUG_LOG_IN_CRC_LOG
|
56 | 56 |
|
57 |
| -#include "Common/CommandLine.h" |
58 | 57 | #define DEBUG_THREADSAFE
|
59 | 58 | #ifdef DEBUG_THREADSAFE
|
60 | 59 | #include "Common/CriticalSection.h"
|
61 | 60 | #endif
|
| 61 | +#include "Common/CommandLine.h" |
62 | 62 | #include "Common/Debug.h"
|
63 | 63 | #include "Common/CRCDebug.h"
|
64 |
| -#include "Common/Registry.h" |
65 | 64 | #include "Common/SystemInfo.h"
|
66 | 65 | #include "Common/UnicodeString.h"
|
67 | 66 | #include "GameClient/ClientInstance.h"
|
68 | 67 | #include "GameClient/GameText.h"
|
69 | 68 | #include "GameClient/Keyboard.h"
|
70 | 69 | #include "GameClient/Mouse.h"
|
71 |
| -#include "Common/StackDump.h" |
| 70 | +#if defined(DEBUG_STACKTRACE) || defined(IG_DEBUG_STACKTRACE) |
| 71 | + #include "Common/StackDump.h" |
| 72 | +#endif |
72 | 73 |
|
73 | 74 | // Horrible reference, but we really, really need to know if we are windowed.
|
74 | 75 | extern bool DX8Wrapper_IsWindowed;
|
@@ -271,8 +272,8 @@ static int doCrashBox(const char *buffer, Bool logResult)
|
271 | 272 | int result;
|
272 | 273 |
|
273 | 274 | if (!ignoringAsserts()) {
|
274 |
| - //result = MessageBoxWrapper(buffer, "Assertion Failure", MB_ABORTRETRYIGNORE|MB_TASKMODAL|MB_ICONWARNING|MB_DEFBUTTON3); |
275 |
| - result = MessageBoxWrapper(buffer, "Assertion Failure", MB_ABORTRETRYIGNORE|MB_TASKMODAL|MB_ICONWARNING); |
| 275 | + result = MessageBoxWrapper(buffer, "Assertion Failure", MB_ABORTRETRYIGNORE|MB_TASKMODAL|MB_ICONWARNING|MB_DEFBUTTON3); |
| 276 | + //result = MessageBoxWrapper(buffer, "Assertion Failure", MB_ABORTRETRYIGNORE|MB_TASKMODAL|MB_ICONWARNING); |
276 | 277 | } else {
|
277 | 278 | result = IDIGNORE;
|
278 | 279 | }
|
@@ -358,7 +359,7 @@ void DebugInit(int flags)
|
358 | 359 | // ::MessageBox(NULL, "Debug already inited", "", MB_OK|MB_APPLMODAL);
|
359 | 360 |
|
360 | 361 | // just quietly allow multiple calls to this, so that static ctors can call it.
|
361 |
| - if (theDebugFlags == 0 && strcmp(gAppPrefix, "wb_") != 0) |
| 362 | + if (theDebugFlags == 0) |
362 | 363 | {
|
363 | 364 | theDebugFlags = flags;
|
364 | 365 |
|
@@ -722,6 +723,11 @@ void ReleaseCrash(const char *reason)
|
722 | 723 | {
|
723 | 724 | /// do additional reporting on the crash, if possible
|
724 | 725 |
|
| 726 | + if (!DX8Wrapper_IsWindowed) { |
| 727 | + if (ApplicationHWnd) { |
| 728 | + ShowWindow(ApplicationHWnd, SW_HIDE); |
| 729 | + } |
| 730 | + } |
725 | 731 |
|
726 | 732 | char prevbuf[ _MAX_PATH ];
|
727 | 733 | char curbuf[ _MAX_PATH ];
|
@@ -767,15 +773,13 @@ void ReleaseCrash(const char *reason)
|
767 | 773 | #else
|
768 | 774 | // crash error messaged changed 3/6/03 BGC
|
769 | 775 | // ::MessageBox(NULL, "Sorry, a serious error occurred.", "Technical Difficulties...", MB_OK|MB_TASKMODAL|MB_ICONERROR);
|
| 776 | +// ::MessageBox(NULL, "You have encountered a serious error. Serious errors can be caused by many things including viruses, overheated hardware and hardware that does not meet the minimum specifications for the game. Please visit the forums at www.generals.ea.com for suggested courses of action or consult your manual for Technical Support contact information.", "Technical Difficulties...", MB_OK|MB_TASKMODAL|MB_ICONERROR); |
| 777 | + |
| 778 | +// crash error message changed again 8/22/03 M Lorenzen... made this message box modal to the system so it will appear on top of any task-modal windows, splash-screen, etc. |
| 779 | + ::MessageBox(NULL, "You have encountered a serious error. Serious errors can be caused by many things including viruses, overheated hardware and hardware that does not meet the minimum specifications for the game. Please visit the forums at www.generals.ea.com for suggested courses of action or consult your manual for Technical Support contact information.", |
| 780 | + "Technical Difficulties...", |
| 781 | + MB_OK|MB_SYSTEMMODAL|MB_ICONERROR); |
770 | 782 |
|
771 |
| - if (!GetRegistryLanguage().compareNoCase("german2") || !GetRegistryLanguage().compareNoCase("german") ) |
772 |
| - { |
773 |
| - ::MessageBox(NULL, "Es ist ein gravierender Fehler aufgetreten. Solche Fehler k\366nnen durch viele verschiedene Dinge wie Viren, \374berhitzte Hardware und Hardware, die den Mindestanforderungen des Spiels nicht entspricht, ausgel\366st werden. Tipps zur Vorgehensweise findest du in den Foren unter www.generals.ea.com, Informationen zum Technischen Kundendienst im Handbuch zum Spiel.", "Fehler...", MB_OK|MB_TASKMODAL|MB_ICONERROR); |
774 |
| - } |
775 |
| - else |
776 |
| - { |
777 |
| - ::MessageBox(NULL, "You have encountered a serious error. Serious errors can be caused by many things including viruses, overheated hardware and hardware that does not meet the minimum specifications for the game. Please visit the forums at www.generals.ea.com for suggested courses of action or consult your manual for Technical Support contact information.", "Technical Difficulties...", MB_OK|MB_TASKMODAL|MB_ICONERROR); |
778 |
| - } |
779 | 783 |
|
780 | 784 | #endif
|
781 | 785 |
|
|
0 commit comments