]> git.saurik.com Git - wxWidgets.git/blobdiff - src/msw/crashrpt.cpp
Fixed wxPropertyGridManager::CreatePropertyGrid(), corrected documentation about...
[wxWidgets.git] / src / msw / crashrpt.cpp
index 03bfe7f53401778ea0f693aaadd71ba849720910..2b0e276cefb6b91ee3113cfc2b7b1b66c7360d16 100644 (file)
@@ -130,7 +130,9 @@ void wxCrashReportImpl::Output(const wxChar *format, ...)
     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);
 }
@@ -225,7 +227,7 @@ bool wxCrashReportImpl::Generate(int flags, EXCEPTION_POINTERS *ep)
     }
     else // dbghelp.dll couldn't be loaded
     {
-        Output(wxDbgHelpDLL::GetErrorMessage());
+        Output(_T("%s"), wxDbgHelpDLL::GetErrorMessage().c_str());
     }
 #else // !wxUSE_DBGHELP
     wxUnusedVar(flags);
@@ -243,14 +245,13 @@ bool wxCrashReportImpl::Generate(int flags, EXCEPTION_POINTERS *ep)
 // ----------------------------------------------------------------------------
 
 /* 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;
 }