diff options
author | David Robillard <d@drobilla.net> | 2012-06-29 23:06:19 +0000 |
---|---|---|
committer | David Robillard <d@drobilla.net> | 2012-06-29 23:06:19 +0000 |
commit | 8f7f419adcfcd6cd7557b82266b064ed242793ad (patch) | |
tree | e0004f6eec4958260df53c711ac2c92d85e8f4cc /src/server/EventWriter.cpp | |
parent | 6eb584d3b0bc67fc8de36baba5e296d816ba080f (diff) | |
download | ingen-8f7f419adcfcd6cd7557b82266b064ed242793ad.tar.gz ingen-8f7f419adcfcd6cd7557b82266b064ed242793ad.tar.bz2 ingen-8f7f419adcfcd6cd7557b82266b064ed242793ad.zip |
Fix crashes caused by events attempting to respond to deleted clients (fix #842).
This one mainly manifested when using ingenish from the command line since the client is so short lived.
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@4503 a436a847-0d15-0410-975c-d299462d15a1
Diffstat (limited to 'src/server/EventWriter.cpp')
-rw-r--r-- | src/server/EventWriter.cpp | 18 |
1 files changed, 9 insertions, 9 deletions
diff --git a/src/server/EventWriter.cpp b/src/server/EventWriter.cpp index f0a2f100..43cf25ac 100644 --- a/src/server/EventWriter.cpp +++ b/src/server/EventWriter.cpp @@ -55,7 +55,7 @@ EventWriter::put(const Raul::URI& uri, const Resource::Graph ctx) { _engine.enqueue_event( - new Events::Delta(_engine, _respondee.get(), _request_id, now(), + new Events::Delta(_engine, _respondee, _request_id, now(), true, ctx, uri, properties)); } @@ -65,7 +65,7 @@ EventWriter::delta(const Raul::URI& uri, const Resource::Properties& add) { _engine.enqueue_event( - new Events::Delta(_engine, _respondee.get(), _request_id, now(), + new Events::Delta(_engine, _respondee, _request_id, now(), false, Resource::DEFAULT, uri, add, remove)); } @@ -74,7 +74,7 @@ EventWriter::move(const Raul::Path& old_path, const Raul::Path& new_path) { _engine.enqueue_event( - new Events::Move(_engine, _respondee.get(), _request_id, now(), + new Events::Move(_engine, _respondee, _request_id, now(), old_path, new_path)); } @@ -82,7 +82,7 @@ void EventWriter::del(const Raul::URI& uri) { _engine.enqueue_event( - new Events::Delete(_engine, _respondee.get(), _request_id, now(), uri)); + new Events::Delete(_engine, _respondee, _request_id, now(), uri)); } void @@ -90,7 +90,7 @@ EventWriter::connect(const Raul::Path& tail_path, const Raul::Path& head_path) { _engine.enqueue_event( - new Events::Connect(_engine, _respondee.get(), _request_id, now(), + new Events::Connect(_engine, _respondee, _request_id, now(), tail_path, head_path)); } @@ -100,7 +100,7 @@ EventWriter::disconnect(const Raul::Path& src, const Raul::Path& dst) { _engine.enqueue_event( - new Events::Disconnect(_engine, _respondee.get(), _request_id, now(), + new Events::Disconnect(_engine, _respondee, _request_id, now(), src, dst)); } @@ -109,7 +109,7 @@ EventWriter::disconnect_all(const Raul::Path& patch_path, const Raul::Path& path) { _engine.enqueue_event( - new Events::DisconnectAll(_engine, _respondee.get(), _request_id, now(), + new Events::DisconnectAll(_engine, _respondee, _request_id, now(), patch_path, path)); } @@ -123,7 +123,7 @@ EventWriter::set_property(const Raul::URI& uri, Resource::Properties add; add.insert(make_pair(predicate, value)); _engine.enqueue_event( - new Events::Delta(_engine, _respondee.get(), _request_id, now(), + new Events::Delta(_engine, _respondee, _request_id, now(), false, Resource::DEFAULT, uri, add, remove)); } @@ -131,7 +131,7 @@ void EventWriter::get(const Raul::URI& uri) { _engine.enqueue_event( - new Events::Get(_engine, _respondee.get(), _request_id, now(), uri)); + new Events::Get(_engine, _respondee, _request_id, now(), uri)); } } // namespace Server |