From 74a711e0d1cdb5c505a227dc9b1925657f1e778d Mon Sep 17 00:00:00 2001 From: David Robillard Date: Sat, 24 Sep 2011 03:22:30 +0000 Subject: Use store lock to avoid race conditions with Get and create/delete events. Get really shouldn't be reading the store (via ObjectSender) in the post processing thread at all, avoiding that entirely would be a better solution. git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@3484 a436a847-0d15-0410-975c-d299462d15a1 --- src/server/events/CreatePort.hpp | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) (limited to 'src/server/events/CreatePort.hpp') diff --git a/src/server/events/CreatePort.hpp b/src/server/events/CreatePort.hpp index ae44e2f1..e3c13fa1 100644 --- a/src/server/events/CreatePort.hpp +++ b/src/server/events/CreatePort.hpp @@ -18,12 +18,16 @@ #ifndef INGEN_EVENTS_CREATEPORT_HPP #define INGEN_EVENTS_CREATEPORT_HPP -#include "QueuedEvent.hpp" -#include "raul/Path.hpp" +#include + #include "raul/Array.hpp" +#include "raul/Path.hpp" + #include "ingen/PortType.hpp" #include "ingen/Resource.hpp" +#include "QueuedEvent.hpp" + namespace Ingen { namespace Server { @@ -71,7 +75,8 @@ private: DriverPort* _driver_port; ///< Driver (eg Jack) port if this is a toplevel port bool _succeeded; - Resource::Properties _properties; + Resource::Properties _properties; + Glib::RWLock::WriterLock _lock; }; } // namespace Server -- cgit v1.2.1