summaryrefslogtreecommitdiffstats
path: root/src/server
diff options
context:
space:
mode:
authorDavid Robillard <d@drobilla.net>2013-02-24 01:46:15 +0000
committerDavid Robillard <d@drobilla.net>2013-02-24 01:46:15 +0000
commit4ff4c69ff0d22e88b8799f36f277de263232de4f (patch)
tree1fa73050181683a01799a1afea246b3d463f9699 /src/server
parentc09203d0caa4695bec58a8bf84e31ff69de5eb61 (diff)
downloadingen-4ff4c69ff0d22e88b8799f36f277de263232de4f.tar.gz
ingen-4ff4c69ff0d22e88b8799f36f277de263232de4f.tar.bz2
ingen-4ff4c69ff0d22e88b8799f36f277de263232de4f.zip
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
Diffstat (limited to 'src/server')
-rw-r--r--src/server/PortImpl.cpp2
-rw-r--r--src/server/events/CreateBlock.cpp7
2 files changed, 3 insertions, 6 deletions
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);