]> git.saurik.com Git - wxWidgets.git/blobdiff - src/msw/main.cpp
A slightly modified version of Patch #1197468. Keeps track of pending
[wxWidgets.git] / src / msw / main.cpp
index 83f224db2c7d1e0143fa9b0b542461f5bb201690..05b74c9e0ae6e4d4f46a9d89cf3e731eed36c3c8 100644 (file)
@@ -70,7 +70,7 @@ extern int wxEntryReal(int& argc, wxChar **argv);
 
 #if wxUSE_BASE
 
-#ifdef __VISUALC__
+#if wxUSE_ON_FATAL_EXCEPTION && defined(__VISUALC__) && !defined(__WXWINCE__)
     // VC++ (at least from 4.0 up to version 7.1) is incredibly broken in that
     // a "catch ( ... )" will *always* catch SEH exceptions in it even though
     // it should have never been the case... to prevent such catches from
@@ -219,14 +219,17 @@ int wxEntry(int& argc, wxChar **argv)
     {
         wxFatalExit();
 
-        // this code is unreachable but put it here to suppress warnings
+#if !defined(__VISUALC__) || defined(__WXDEBUG__)
+        // this code is unreachable but put it here to suppress warnings in some compilers
+        // and disable for others to supress warnings too
         return -1;
+#endif // !__VISUALC__ in release build
     }
 }
 
 #else // !wxUSE_ON_FATAL_EXCEPTION
 
-#ifdef __VISUALC__
+#if defined(__VISUALC__) && !defined(__WXWINCE__)
 
 static void
 wxSETranslator(unsigned int WXUNUSED(code), EXCEPTION_POINTERS * WXUNUSED(ep))
@@ -315,7 +318,7 @@ extern "C"
 // DLL entry point
 
 BOOL WINAPI
-DllMain(HANDLE hModule, DWORD fdwReason, LPVOID WXUNUSED(lpReserved))
+DllMain(HINSTANCE hModule, DWORD fdwReason, LPVOID WXUNUSED(lpReserved))
 {
     // Only call wxEntry if the application itself is part of the DLL.
     // If only the wxWidgets library is in the DLL, then the