#endif
#if defined(__WXMAC__)
- // VZ: MacTypes.h is enough under Mac OS X (where I could test it) but
- // I don't know which headers are needed under earlier systems so
- // include everything when in doubt
#ifdef __DARWIN__
- #include "MacTypes.h"
+ #include <CoreServices/CoreServices.h>
#else
#include "wx/mac/private.h" // includes mac headers
#endif
#endif // __WXMAC__
#ifdef __WXDEBUG__
- #ifdef wxUSE_STACKWALKER
+ #if wxUSE_STACKWALKER
#include "wx/stackwalk.h"
#ifdef __WXMSW__
#include "wx/msw/debughlp.h"
#endif // wxUSE_STACKWALKER
#endif // __WXDEBUG__
+// wxABI_VERSION can be defined when compiling applications but it should be
+// left undefined when compiling the library itself, it is then set to its
+// default value in version.h
+#if wxABI_VERSION != wxMAJOR_VERSION * 10000 + wxMINOR_VERSION * 100 + 99
+#error "wxABI_VERSION should not be defined when compiling the library"
+#endif
+
// ----------------------------------------------------------------------------
// private functions prototypes
// ----------------------------------------------------------------------------
// initilization/cleanup
// ----------------------------------------------------------------------------
-bool wxAppConsole::Initialize(int& argc, wxChar **argv)
+bool wxAppConsole::Initialize(int& argcOrig, wxChar **argvOrig)
{
-#if wxUSE_LOG
- // If some code logged something before wxApp instance was created,
- // wxLogStderr was set as the target. Undo it here by destroying the
- // current target. It will be re-created next time logging is needed, but
- // this time wxAppTraits will be used:
- delete wxLog::SetActiveTarget(NULL);
-#endif // wxUSE_LOG
-
// remember the command line arguments
- this->argc = argc;
- this->argv = argv;
+ argc = argcOrig;
+ argv = argvOrig;
#ifndef __WXPALMOS__
if ( m_appName.empty() && argv )
{
wxString stackTrace;
-#ifdef __WXMSW__
- // check that we can get the stack trace before trying to do it
- if ( !wxDbgHelpDLL::Init() )
- return stackTrace;
-#endif
-
class StackDump : public wxStackWalker
{
public: