summaryrefslogtreecommitdiff
path: root/indra/llcrashlogger
diff options
context:
space:
mode:
authorBrad Payne (Vir Linden) <vir@lindenlab.com>2011-10-27 14:50:54 -0400
committerBrad Payne (Vir Linden) <vir@lindenlab.com>2011-10-27 14:50:54 -0400
commit0c84957d312bc3dc31fdb5711317157df73b72e6 (patch)
tree2247440cd8d039a2a8c31182f108734988209e8b /indra/llcrashlogger
parentcc719670d9ae9c2793f291dd4a3fd9f0118b5876 (diff)
SH-2606 FIX, SH-2628 FIX - crash on exit in crash logger fixed by LLProxy::cleanupClass()
Diffstat (limited to 'indra/llcrashlogger')
-rwxr-xr-x[-rw-r--r--]indra/llcrashlogger/llcrashlogger.cpp7
-rwxr-xr-x[-rw-r--r--]indra/llcrashlogger/llcrashlogger.h3
2 files changed, 9 insertions, 1 deletions
diff --git a/indra/llcrashlogger/llcrashlogger.cpp b/indra/llcrashlogger/llcrashlogger.cpp
index 331a1692ee..3461aa3e6c 100644..100755
--- a/indra/llcrashlogger/llcrashlogger.cpp
+++ b/indra/llcrashlogger/llcrashlogger.cpp
@@ -42,6 +42,7 @@
#include "llpumpio.h"
#include "llhttpclient.h"
#include "llsdserialize.h"
+#include "llproxy.h"
LLPumpIO* gServicePump;
BOOL gBreak = false;
@@ -428,3 +429,9 @@ bool LLCrashLogger::init()
return true;
}
+
+// For cleanup code common to all platforms.
+void LLCrashLogger::commonCleanup()
+{
+ LLProxy::cleanupClass();
+}
diff --git a/indra/llcrashlogger/llcrashlogger.h b/indra/llcrashlogger/llcrashlogger.h
index 5d0cb5931c..1510d7e0b3 100644..100755
--- a/indra/llcrashlogger/llcrashlogger.h
+++ b/indra/llcrashlogger/llcrashlogger.h
@@ -48,7 +48,8 @@ public:
virtual void updateApplication(const std::string& message = LLStringUtil::null);
virtual bool init();
virtual bool mainLoop() = 0;
- virtual bool cleanup() { return true; }
+ virtual bool cleanup() = 0;
+ void commonCleanup();
void setUserText(const std::string& text) { mCrashInfo["UserNotes"] = text; }
S32 getCrashBehavior() { return mCrashBehavior; }
bool runCrashLogPost(std::string host, LLSD data, std::string msg, int retries, int timeout);