X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/a5f1fd3e33d25740ad47e4755868c74a58c0f9eb..da2b4b7a57f816723ed26dbbeca0549b9ce6735a:/src/common/log.cpp diff --git a/src/common/log.cpp b/src/common/log.cpp index 1ec1077722..be03d3c4c8 100644 --- a/src/common/log.cpp +++ b/src/common/log.cpp @@ -418,7 +418,7 @@ wxLogStderr::wxLogStderr(FILE *fp) m_fp = fp; } -#if defined(__WXMAC__) && !defined(__UNIX__) +#if defined(__WXMAC__) && !defined(__DARWIN__) #define kDebuggerSignature 'MWDB' static Boolean FindProcessBySignature(OSType signature, ProcessInfoRec* info) @@ -514,7 +514,7 @@ void wxLogStderr::DoLogString(const wxChar *szString, time_t WXUNUSED(t)) str += wxT("\r\n") ; OutputDebugString(str.c_str()); #endif // MSW -#if defined(__WXMAC__) && !defined(__WXMAC_X__) && wxUSE_GUI +#if defined(__WXMAC__) && !defined(__DARWIN__) && wxUSE_GUI Str255 pstr ; strcpy( (char*) pstr , str.c_str() ) ; strcat( (char*) pstr , ";g" ) ; @@ -615,6 +615,24 @@ void wxLogChain::DoLog(wxLogLevel level, const wxChar *szString, time_t t) } } +// ---------------------------------------------------------------------------- +// wxLogPassThrough +// ---------------------------------------------------------------------------- + +#ifdef __VISUALC__ + // "'this' : used in base member initializer list" - so what? + #pragma warning(disable:4355) +#endif // VC++ + +wxLogPassThrough::wxLogPassThrough() + : wxLogChain(this) +{ +} + +#ifdef __VISUALC__ + #pragma warning(default:4355) +#endif // VC++ + // ============================================================================ // Global functions/variables // ============================================================================ @@ -714,7 +732,10 @@ const wxChar *wxSysErrorMsg(unsigned long nErrCode) 0, NULL); // copy it to our buffer and free memory - wxStrncpy(s_szBuf, (const wxChar *)lpMsgBuf, WXSIZEOF(s_szBuf) - 1); + if( lpMsgBuf != 0 ) + wxStrncpy(s_szBuf, (const wxChar *)lpMsgBuf, WXSIZEOF(s_szBuf) - 1); + else + s_szBuf[0] = wxT('\0'); s_szBuf[WXSIZEOF(s_szBuf) - 1] = wxT('\0'); LocalFree(lpMsgBuf);