summaryrefslogtreecommitdiff
path: root/indra/llcommon
diff options
context:
space:
mode:
Diffstat (limited to 'indra/llcommon')
-rw-r--r--indra/llcommon/llerror.cpp7
-rw-r--r--indra/llcommon/llevent.h2
-rw-r--r--indra/llcommon/llthread.h3
3 files changed, 10 insertions, 2 deletions
diff --git a/indra/llcommon/llerror.cpp b/indra/llcommon/llerror.cpp
index 5964993928..4f8dc51458 100644
--- a/indra/llcommon/llerror.cpp
+++ b/indra/llcommon/llerror.cpp
@@ -20,6 +20,7 @@ extern apr_thread_mutex_t *gLogMutexp;
#include "lllivefile.h"
#include "llsd.h"
#include "llsdserialize.h"
+#include "llstl.h"
#include <algorithm>
#include <cctype>
@@ -390,6 +391,12 @@ namespace LLError
shouldLogCallCounter(0)
{ }
+ ~Settings()
+ {
+ for_each(recorders.begin(), recorders.end(),
+ DeletePointer());
+ }
+
static Settings*& getPtr();
};
diff --git a/indra/llcommon/llevent.h b/indra/llcommon/llevent.h
index a3f6b0e942..6a71a9cbad 100644
--- a/indra/llcommon/llevent.h
+++ b/indra/llcommon/llevent.h
@@ -68,12 +68,12 @@ public:
class LLSimpleListener : public LLEventListener
{
public:
- virtual ~LLSimpleListener();
void clearDispatchers();
virtual bool handleAttach(LLEventDispatcher *dispatcher);
virtual bool handleDetach(LLEventDispatcher *dispatcher);
protected:
+ ~LLSimpleListener();
std::vector<LLEventDispatcher *> mDispatchers;
};
diff --git a/indra/llcommon/llthread.h b/indra/llcommon/llthread.h
index ce5daa938c..659f73bee7 100644
--- a/indra/llcommon/llthread.h
+++ b/indra/llcommon/llthread.h
@@ -219,8 +219,9 @@ private:
// Pure virtual class
class LLResponder : public LLThreadSafeRefCount
{
-public:
+protected:
virtual ~LLResponder();
+public:
virtual void completed(bool success) = 0;
};