summaryrefslogtreecommitdiff
path: root/indra/win_crash_logger
diff options
context:
space:
mode:
authorandreykproductengine <andreykproductengine@lindenlab.com>2017-09-06 16:04:59 +0300
committerandreykproductengine <andreykproductengine@lindenlab.com>2017-09-06 16:04:59 +0300
commit4a4d93d8c0c45248f76d6f27fb523b8ad361a473 (patch)
treeb918eb8ee028744d1db07ef02deb85a57a6d0192 /indra/win_crash_logger
parentf6655bd2ae4aca0fa309ee1fdbcc515d6606b949 (diff)
MAINT-7691 Fixed crash report not generating files in unicode named folders
Diffstat (limited to 'indra/win_crash_logger')
-rw-r--r--indra/win_crash_logger/llcrashloggerwindows.cpp2
-rw-r--r--indra/win_crash_logger/win_crash_logger.cpp11
2 files changed, 12 insertions, 1 deletions
diff --git a/indra/win_crash_logger/llcrashloggerwindows.cpp b/indra/win_crash_logger/llcrashloggerwindows.cpp
index 167acf6ac7..267224a79b 100644
--- a/indra/win_crash_logger/llcrashloggerwindows.cpp
+++ b/indra/win_crash_logger/llcrashloggerwindows.cpp
@@ -377,7 +377,7 @@ bool LLCrashLoggerWindows::initCrashServer()
std::wstring wpipe_name;
wpipe_name = mCrashReportPipeStr + std::wstring(wstringize(mPID));
- std::wstring wdump_path( wstringize(dump_path) );
+ std::wstring wdump_path(utf8str_to_utf16str(dump_path));
//Pipe naming conventions: http://msdn.microsoft.com/en-us/library/aa365783%28v=vs.85%29.aspx
mCrashHandler = new CrashGenerationServer( wpipe_name,
diff --git a/indra/win_crash_logger/win_crash_logger.cpp b/indra/win_crash_logger/win_crash_logger.cpp
index 7466dbb766..58746eba02 100644
--- a/indra/win_crash_logger/win_crash_logger.cpp
+++ b/indra/win_crash_logger/win_crash_logger.cpp
@@ -29,15 +29,26 @@
#include <stdlib.h>
#include "llcrashloggerwindows.h"
+#ifdef _UNICODE
+int APIENTRY wWinMain(HINSTANCE hInstance,
+ HINSTANCE hPrevInstance,
+ LPWSTR lpCmdLine,
+ int nCmdShow)
+#else
int APIENTRY WinMain(HINSTANCE hInstance,
HINSTANCE hPrevInstance,
LPSTR lpCmdLine,
int nCmdShow)
+#endif //_UNICODE
{
LL_INFOS() << "Starting crash reporter with args" << &lpCmdLine << LL_ENDL;
LLCrashLoggerWindows app;
app.setHandle(hInstance);
+#ifdef _UNICODE
+ app.parseCommandOptions(__argc, __wargv);
+#else
app.parseCommandOptions(__argc, __argv);
+#endif //_UNICODE
LLSD options = LLApp::instance()->getOptionData(
LLApp::PRIORITY_COMMAND_LINE);