DWORD cbWritten;
wxString s = wxString::FormatV(format, argptr);
- ::WriteFile(m_hFile, s, s.length() * sizeof(wxChar), &cbWritten, 0);
+
+ wxCharBuffer buf(s.mb_str(wxConvUTF8));
+ ::WriteFile(m_hFile, buf.data(), strlen(buf.data()), &cbWritten, 0);
va_end(argptr);
}
// the file size is not much bigger than when using MiniDumpNormal
// if we use the flags below, but the minidump is much more useful
// as it contains the values of many (but not all) local variables
- dumpFlags = (MINIDUMP_TYPE)(MiniDumpScanMemory |
- MiniDumpWithIndirectlyReferencedMemory);
+ dumpFlags = (MINIDUMP_TYPE)(MiniDumpScanMemory
+#if _MSC_VER > 1300
+ |MiniDumpWithIndirectlyReferencedMemory
+#endif
+ );
}
if ( !wxDbgHelpDLL::MiniDumpWriteDump
}
else // dbghelp.dll couldn't be loaded
{
- Output(wxDbgHelpDLL::GetErrorMessage());
+ Output(_T("%s"), wxDbgHelpDLL::GetErrorMessage().c_str());
}
#else // !wxUSE_DBGHELP
wxUnusedVar(flags);
// ----------------------------------------------------------------------------
/* static */
-void wxCrashReport::SetFileName(const wxChar *filename)
+void wxCrashReport::SetFileName(const wxString& filename)
{
- wxStrncpy(gs_reportFilename, filename, WXSIZEOF(gs_reportFilename) - 1);
- gs_reportFilename[WXSIZEOF(gs_reportFilename) - 1] = _T('\0');
+ wxStrlcpy(gs_reportFilename, filename.wx_str(), WXSIZEOF(gs_reportFilename));
}
/* static */
-const wxChar *wxCrashReport::GetFileName()
+wxString wxCrashReport::GetFileName()
{
return gs_reportFilename;
}