diff options
author | Callum Prentice <callum@lindenlab.com> | 2021-07-19 14:35:44 -0700 |
---|---|---|
committer | Callum Prentice <callum@lindenlab.com> | 2021-07-19 14:35:44 -0700 |
commit | 8631a7a07743af00431c6f33361ab06405bcf114 (patch) | |
tree | e7d983394f5ca0cbe2465780e8205cf32ba67ad3 /indra/llcommon/llapp.cpp | |
parent | 57da3e609fddb37ef3ddef830a0be84ebc5337bd (diff) | |
parent | be6066eae218856f7fd74b98968a75e5062fa830 (diff) |
Merge with tip of Master after a Viewer release
Diffstat (limited to 'indra/llcommon/llapp.cpp')
-rw-r--r-- | indra/llcommon/llapp.cpp | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/indra/llcommon/llapp.cpp b/indra/llcommon/llapp.cpp index 34f6ba140a..bf3de55685 100644 --- a/indra/llcommon/llapp.cpp +++ b/indra/llcommon/llapp.cpp @@ -529,7 +529,12 @@ void LLApp::setupErrorHandling(bool second_instance) #endif // LL_LINUX #endif // ! LL_WINDOWS + +#ifdef LL_BUGSPLAT + // do not start our own error thread +#else // ! LL_BUGSPLAT startErrorThread(); +#endif } void LLApp::startErrorThread() @@ -816,7 +821,9 @@ void setup_signals() act.sa_flags = SA_SIGINFO; // Synchronous signals +# ifndef LL_BUGSPLAT sigaction(SIGABRT, &act, NULL); +# endif sigaction(SIGALRM, &act, NULL); sigaction(SIGBUS, &act, NULL); sigaction(SIGFPE, &act, NULL); @@ -853,7 +860,9 @@ void clear_signals() act.sa_flags = SA_SIGINFO; // Synchronous signals +# ifndef LL_BUGSPLAT sigaction(SIGABRT, &act, NULL); +# endif sigaction(SIGALRM, &act, NULL); sigaction(SIGBUS, &act, NULL); sigaction(SIGFPE, &act, NULL); @@ -906,6 +915,7 @@ void default_unix_signal_handler(int signum, siginfo_t *info, void *) return; case SIGABRT: + // Note that this handler is not set for SIGABRT when using Bugsplat // Abort just results in termination of the app, no funky error handling. if (LLApp::sLogInSignal) { |