added wOnAssert(..., wxCStrData) overload to fix compilation of code using wxASSERT(s.c_str())

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@46152 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Vadim Zeitlin
2007-05-22 01:36:24 +00:00
parent b0bf0e50ea
commit 2b232d202a
2 changed files with 22 additions and 3 deletions

View File

@@ -92,7 +92,7 @@
/* /*
This function is called whenever one of debugging macros fails (i.e. This function is called whenever one of debugging macros fails (i.e.
condition is false in an assertion). To customize its behaviour, override condition is false in an assertion). To customize its behaviour, override
wxApp::OnAssert(). wxApp::OnAssertFailure().
Parameters: Parameters:
szFile and nLine - file name and line number of the ASSERT szFile and nLine - file name and line number of the ASSERT
@@ -101,7 +101,7 @@
szMsg - optional message explaining the reason szMsg - optional message explaining the reason
*/ */
/* this version is for compatibility with wx 2.8: */ /* this version is for compatibility with wx 2.8 Unicode build only: */
extern void WXDLLIMPEXP_BASE wxOnAssert(const wxChar *szFile, extern void WXDLLIMPEXP_BASE wxOnAssert(const wxChar *szFile,
int nLine, int nLine,
const char *szFunc, const char *szFunc,
@@ -132,7 +132,11 @@
#endif // wxUSE_UNICODE #endif // wxUSE_UNICODE
class WXDLLIMPEXP_BASE wxString; class WXDLLIMPEXP_BASE wxString;
/* these two work when szMsg passed to debug macro is a string: */ class WXDLLIMPEXP_BASE wxCStrData;
/* these two work when szMsg passed to debug macro is a string,
we also have to provide wxCStrData overload to resolve ambiguity
which would otherwise arise from wxASSERT( s.c_str() ): */
extern void WXDLLIMPEXP_BASE wxOnAssert(const wxString& szFile, extern void WXDLLIMPEXP_BASE wxOnAssert(const wxString& szFile,
int nLine, int nLine,
const wxString& szFunc, const wxString& szFunc,
@@ -144,6 +148,12 @@
const wxString& szFunc, const wxString& szFunc,
const wxString& szCond); const wxString& szCond);
extern void WXDLLIMPEXP_BASE wxOnAssert(const char *szFile,
int nLine,
const char *szFunc,
const char *szCond,
const wxCStrData& msg);
extern void WXDLLIMPEXP_BASE wxOnAssert(const char *szFile, extern void WXDLLIMPEXP_BASE wxOnAssert(const char *szFile,
int nLine, int nLine,
const char *szFunc, const char *szFunc,

View File

@@ -853,6 +853,15 @@ void wxOnAssert(const char *szFile,
wxDoOnAssert(szFile, nLine, szFunc, szCond, szMsg); wxDoOnAssert(szFile, nLine, szFunc, szCond, szMsg);
} }
void wxOnAssert(const char *szFile,
int nLine,
const char *szFunc,
const char *szCond,
const wxCStrData& msg)
{
wxDoOnAssert(szFile, nLine, szFunc, szCond, msg);
}
#if wxUSE_UNICODE #if wxUSE_UNICODE
void wxOnAssert(const char *szFile, void wxOnAssert(const char *szFile,
int nLine, int nLine,