summaryrefslogtreecommitdiff
path: root/indra/llui/llnotifications.h
diff options
context:
space:
mode:
authorAndrey Kleshchev <andreykproductengine@lindenlab.com>2023-11-23 23:28:10 +0200
committerakleshchev <117672381+akleshchev@users.noreply.github.com>2023-11-24 15:15:10 +0200
commitdce1fae986f4f61f51e7825de903aa58239c28c8 (patch)
treecd87bab800cfa7859f8cd3d6521de0666234308b /indra/llui/llnotifications.h
parenta1fed466f0cc0c08d3cdcba88e02230c94e763b0 (diff)
SL-17076 MacOS crash on clearing ChicletNotificationChannel
Crash appears to happens inside mItems.clear() of the LLNotificationChannelBase, but there is no apparent reson for it and stack jumped some steps, so I'm doing cleanup more explicitly to see if it's indeed there and not a corruption somewhere earlier.
Diffstat (limited to 'indra/llui/llnotifications.h')
-rw-r--r--indra/llui/llnotifications.h8
1 files changed, 5 insertions, 3 deletions
diff --git a/indra/llui/llnotifications.h b/indra/llui/llnotifications.h
index 921398a693..1577038c36 100644
--- a/indra/llui/llnotifications.h
+++ b/indra/llui/llnotifications.h
@@ -835,7 +835,7 @@ public:
LLNotificationChannel(const Params& p = Params());
LLNotificationChannel(const std::string& name, const std::string& parent, LLNotificationFilter filter);
- virtual ~LLNotificationChannel() {}
+ virtual ~LLNotificationChannel();
typedef LLNotificationSet::iterator Iterator;
std::string getName() const { return mName; }
@@ -845,8 +845,6 @@ public:
return boost::iterator_range<parents_iter>(mParents);
}
- void connectToChannel(const std::string& channel_name);
-
bool isEmpty() const;
S32 size() const;
@@ -856,9 +854,13 @@ public:
std::string summarize();
+protected:
+ void connectToChannel(const std::string& channel_name);
+
private:
std::string mName;
std::vector<std::string> mParents;
+ std::vector<LLBoundListener> mListeners;
};
// An interface class to provide a clean linker seam to the LLNotifications class.