summaryrefslogtreecommitdiff
path: root/libs/ardour/ardour/session.h
diff options
context:
space:
mode:
authorRobin Gareus <robin@gareus.org>2019-12-25 17:59:38 +0100
committerRobin Gareus <robin@gareus.org>2019-12-25 17:59:38 +0100
commitab58c894d391086dfdb1762408cc6c1fa9b2383e (patch)
tree6c0835ec9eb40ff5eaec0957a6edb4202b316ac7 /libs/ardour/ardour/session.h
parentdf17e3f041ab8f94fcc730dada2b53b57ac9113d (diff)
Use weak-ptr for source added/removed signals (1/2)
This might fix a "SessionHandleRef exists across session deletion", when the shared_ptr was be pushed onto a x-thread pool, and not invalidated in time before the session was closed.
Diffstat (limited to 'libs/ardour/ardour/session.h')
-rw-r--r--libs/ardour/ardour/session.h4
1 files changed, 2 insertions, 2 deletions
diff --git a/libs/ardour/ardour/session.h b/libs/ardour/ardour/session.h
index 9326c9b948..3b15c2d7e2 100644
--- a/libs/ardour/ardour/session.h
+++ b/libs/ardour/ardour/session.h
@@ -1783,8 +1783,8 @@ private:
public:
/* Emited when a new source is added to the session */
- PBD::Signal1< void, boost::shared_ptr<Source> > SourceAdded;
- PBD::Signal1< void, boost::shared_ptr<Source> > SourceRemoved;
+ PBD::Signal1< void, boost::weak_ptr<Source> > SourceAdded;
+ PBD::Signal1< void, boost::weak_ptr<Source> > SourceRemoved;
typedef std::map<PBD::ID,boost::shared_ptr<Source> > SourceMap;