Added wxAbort() which can also be used under Windows CE.
Windows CE doesn't have abort() so provide a wrapper which can be used even there (see #13847). git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@70311 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
parent
864c08b2ed
commit
975dc6910e
@ -299,6 +299,13 @@ extern void WXDLLIMPEXP_BASE wxOnAssert(const char *file,
|
||||
#define wxASSERT_LEVEL_2(cond)
|
||||
#endif
|
||||
|
||||
// This is simply a wrapper for the standard abort() which is not available
|
||||
// under all platforms.
|
||||
//
|
||||
// It isn't really debug-related but there doesn't seem to be any better place
|
||||
// for it, so declare it here and define it in appbase.cpp, together with
|
||||
// wxTrap().
|
||||
extern void WXDLLIMPEXP_BASE wxAbort();
|
||||
|
||||
/*
|
||||
wxCHECK macros always check their conditions, setting debug level to 0 only
|
||||
|
@ -9,6 +9,17 @@
|
||||
/** @addtogroup group_funcmacro_debug */
|
||||
//@{
|
||||
|
||||
/**
|
||||
Exits the program immediately.
|
||||
|
||||
This is a simple wrapper for the standard abort() function which is not
|
||||
available under all platforms (currently only Windows CE doesn't provide
|
||||
it).
|
||||
|
||||
@since 2.9.4
|
||||
*/
|
||||
void wxAbort();
|
||||
|
||||
/**
|
||||
@def wxDEBUG_LEVEL
|
||||
|
||||
|
@ -1006,6 +1006,15 @@ bool wxAssertIsEqual(int x, int y)
|
||||
return x == y;
|
||||
}
|
||||
|
||||
void wxAbort()
|
||||
{
|
||||
#ifdef __WXWINCE__
|
||||
ExitThread(3);
|
||||
#else
|
||||
abort();
|
||||
#endif
|
||||
}
|
||||
|
||||
#if wxDEBUG_LEVEL
|
||||
|
||||
// break into the debugger
|
||||
|
@ -355,11 +355,7 @@ wxLog::OnLog(wxLogLevel level,
|
||||
{
|
||||
wxSafeShowMessage(wxS("Fatal Error"), msg);
|
||||
|
||||
#ifdef __WXWINCE__
|
||||
ExitThread(3);
|
||||
#else
|
||||
abort();
|
||||
#endif
|
||||
wxAbort();
|
||||
}
|
||||
|
||||
wxLog *logger;
|
||||
|
Loading…
Reference in New Issue
Block a user