diff options
Diffstat (limited to 'indra/newview')
| -rw-r--r-- | indra/newview/app_settings/cmd_line.xml | 8 | ||||
| -rw-r--r-- | indra/newview/llappviewer.cpp | 14 | 
2 files changed, 22 insertions, 0 deletions
| diff --git a/indra/newview/app_settings/cmd_line.xml b/indra/newview/app_settings/cmd_line.xml index 00d69f805e..ba3b6a42a4 100644 --- a/indra/newview/app_settings/cmd_line.xml +++ b/indra/newview/app_settings/cmd_line.xml @@ -391,5 +391,13 @@        <string>CrashOnStartup</string>      </map> +    <key>disablecrashlogger</key> +    <map> +      <key>desc</key> +      <string>Disables the crash logger and lets the OS handle crashes</string> +      <key>map-to</key> +      <string>DisableCrashLogger</string> +    </map> +    </map>  </llsd> diff --git a/indra/newview/llappviewer.cpp b/indra/newview/llappviewer.cpp index 060e7a5d75..60ed37bdfb 100644 --- a/indra/newview/llappviewer.cpp +++ b/indra/newview/llappviewer.cpp @@ -2048,6 +2048,15 @@ bool LLAppViewer::initConfiguration()  	// - apply command line settings   	clp.notify();  +	// Register the core crash option as soon as we can +	// if we want gdb post-mortem on cores we need to be up and running +	// ASAP or we might miss init issue etc. +	if(clp.hasOption("disablecrashlogger")) +	{ +		llwarns << "Crashes will be handled by system, stack trace logs and crash logger are both disabled" << llendl; +		LLAppViewer::instance()->disableCrashlogger(); +	} +  	// Handle initialization from settings.  	// Start up the debugging console before handling other options.  	if (gSavedSettings.getBOOL("ShowConsoleWindow")) @@ -2624,6 +2633,11 @@ void LLAppViewer::handleViewerCrash()  		abort();  	} +	if (LLApp::isCrashloggerDisabled()) +	{ +		abort(); +	} +  	// Returns whether a dialog was shown.  	// Only do the logic in here once  	if (pApp->mReportedCrash) | 
