From 4ff4c69ff0d22e88b8799f36f277de263232de4f Mon Sep 17 00:00:00 2001 From: David Robillard Date: Sun, 24 Feb 2013 01:46:15 +0000 Subject: Don't send port values to UI for audio ports (fix Calf crash). Don't set ingen:value property for non-control ports. git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@5081 a436a847-0d15-0410-975c-d299462d15a1 --- src/server/PortImpl.cpp | 2 +- src/server/events/CreateBlock.cpp | 7 ++----- 2 files changed, 3 insertions(+), 6 deletions(-) (limited to 'src/server') diff --git a/src/server/PortImpl.cpp b/src/server/PortImpl.cpp index b3590d1f..29b6e044 100644 --- a/src/server/PortImpl.cpp +++ b/src/server/PortImpl.cpp @@ -86,7 +86,7 @@ PortImpl::PortImpl(BufferFactory& bufs, add_property(uris.rdf_type, bufs.forge().alloc_uri(type.uri())); set_property(uris.lv2_index, bufs.forge().make((int32_t)index)); - if (value.is_valid()) { + if ((type == PortType::CONTROL || type == PortType::CV) && value.is_valid()) { set_property(uris.ingen_value, value); } if (type == PortType::ATOM) { diff --git a/src/server/events/CreateBlock.cpp b/src/server/events/CreateBlock.cpp index 8caa3bf6..77c0255d 100644 --- a/src/server/events/CreateBlock.cpp +++ b/src/server/events/CreateBlock.cpp @@ -116,11 +116,8 @@ CreateBlock::pre_process() _update.push_back(make_pair(_block->uri(), _block->properties())); for (uint32_t i = 0; i < _block->num_ports(); ++i) { - const PortImpl* port = _block->port_impl(i); - Resource::Properties pprops = port->properties(); - pprops.erase(uris.ingen_value); - pprops.insert(std::make_pair(uris.ingen_value, port->value())); - _update.push_back(std::make_pair(port->uri(), pprops)); + const PortImpl* port = _block->port_impl(i); + _update.push_back(std::make_pair(port->uri(), port->properties())); } return Event::pre_process_done(Status::SUCCESS); -- cgit v1.2.1