From 8dd6781e0053e588c73793e09da6eae83e27078c Mon Sep 17 00:00:00 2001 From: Nicky Date: Mon, 9 Jun 2014 02:26:08 +0200 Subject: [PATCH] Windows: Only send crashreport in case we had a real crash+minidump. --- indra/win_crash_logger/llcrashloggerwindows.cpp | 9 +++++++++ indra/win_crash_logger/llcrashloggerwindows.h | 1 + 2 files changed, 10 insertions(+) diff --git a/indra/win_crash_logger/llcrashloggerwindows.cpp b/indra/win_crash_logger/llcrashloggerwindows.cpp index ca00c946d0..2f8b95f2fd 100644 --- a/indra/win_crash_logger/llcrashloggerwindows.cpp +++ b/indra/win_crash_logger/llcrashloggerwindows.cpp @@ -260,6 +260,8 @@ LLCrashLoggerWindows::LLCrashLoggerWindows(void) mCrashLookup = new LLCrashLookupWindows(); #endif // LL_SEND_CRASH_REPORTS // [/SL:KB] + + mMinidumpWritten = false; // Flag if we crashed (wrote a minidump) or not. } LLCrashLoggerWindows::~LLCrashLoggerWindows(void) @@ -375,6 +377,8 @@ void LLCrashLoggerWindows::OnClientDumpRequest(void* context, const google_breakpad::ClientInfo* client_info, const std::wstring* file_path) { + mMinidumpWritten = true; // We crashed, need to send those crashlogs. + if (!file_path) { llwarns << "dump with no file path" << llendl; @@ -499,6 +503,11 @@ void LLCrashLoggerWindows::gatherPlatformSpecificFiles() bool LLCrashLoggerWindows::mainLoop() { + // Only show crashlogger if we really crashed. + if( !mMinidumpWritten ) + return true; + // + llinfos << "CrashSubmitBehavior is " << mCrashBehavior << llendl; // Note: parent hwnd is 0 (the desktop). No dlg proc. See Petzold (5th ed) HexCalc example, Chapter 11, p529 // win_crash_logger.rc has been edited by hand. diff --git a/indra/win_crash_logger/llcrashloggerwindows.h b/indra/win_crash_logger/llcrashloggerwindows.h index 1812e2737e..89dd4b2f3e 100644 --- a/indra/win_crash_logger/llcrashloggerwindows.h +++ b/indra/win_crash_logger/llcrashloggerwindows.h @@ -81,6 +81,7 @@ private: HINSTANCE mhInst; + bool mMinidumpWritten; // Flag if we crashed (wrote a minidump) or not. }; #endif