diff --git a/indra/llcommon/llapp.cpp b/indra/llcommon/llapp.cpp index dabed2ba7cb6c2e4206ced9c72dae4f14c9b47e8..7ef4e7fb92b3b4abf25cf7f7777403213b05a782 100755 --- a/indra/llcommon/llapp.cpp +++ b/indra/llcommon/llapp.cpp @@ -339,16 +339,17 @@ void LLApp::setupErrorHandling() { llwarns << "adding breakpad exception handler" << llendl; - const std::wstring wpipe_name(wstringize(getPid())); - const std::string pipe_name(stringize(wpipe_name)); + std::wstring wpipe_name; + wpipe_name = mCrashReportPipeStr + wstringize(getPid()); ::Sleep(3000); //HACK hopefully a static wait won't blow up in my face before google fixes their implementation. + const std::wstring wdump_path(wstringize(mDumpPath)); //HACK this for loop is ueless. Breakpad dumbly returns success when the OOP handler isn't initialized. for (int retries=0;retries<5;++retries) { mExceptionHandler = new google_breakpad::ExceptionHandler( - wstringize(mDumpPath), + wdump_path, NULL, //No filter windows_post_minidump_callback, 0, diff --git a/indra/llcrashlogger/llcrashlogger.cpp b/indra/llcrashlogger/llcrashlogger.cpp index 15c15a449bc115f7765a8cb4ab7bcb9864daa284..073685caff92f40b1110d12584996f39ddcca03f 100755 --- a/indra/llcrashlogger/llcrashlogger.cpp +++ b/indra/llcrashlogger/llcrashlogger.cpp @@ -456,9 +456,6 @@ bool LLCrashLogger::sendCrashLogs() rec["pid"]=opts["pid"]; rec["dumpdir"]=opts["dumpdir"]; rec["procname"]=opts["procname"]; -#if LL_WINDOWS - locks.append(rec); -#endif } if (locks.isArray()) @@ -499,12 +496,11 @@ bool LLCrashLogger::sendCrashLogs() } } } -#if !LL_WINDOWS + if (rec) { newlocks.append(rec); } -#endif mKeyMaster.putProcessList(newlocks); return true; diff --git a/indra/win_crash_logger/llcrashloggerwindows.cpp b/indra/win_crash_logger/llcrashloggerwindows.cpp index 03a709d757fec4f38f07e0bb9f85848976a093cd..30c9cf551b80accc0f72a20d109157c8a2bd13f3 100644 --- a/indra/win_crash_logger/llcrashloggerwindows.cpp +++ b/indra/win_crash_logger/llcrashloggerwindows.cpp @@ -329,6 +329,7 @@ void LLCrashLoggerWindows::OnClientExited(void* context, const google_breakpad::ClientInfo* client_info) { llinfos << "client end. pid = " << client_info->pid() << llendl; + sInstance->mClientsConnected--; } @@ -391,7 +392,7 @@ bool LLCrashLoggerWindows::initCrashServer() wpipe_name = mCrashReportPipeStr + std::wstring(wstringize(mPID)); std::wstring wdump_path( wstringize(dump_path) ); - + //Pipe naming conventions: http://msdn.microsoft.com/en-us/library/aa365783%28v=vs.85%29.aspx mCrashHandler = new CrashGenerationServer( wpipe_name, NULL,