summaryrefslogtreecommitdiffstats
path: root/src/server/events/CreateNode.cpp
diff options
context:
space:
mode:
authorDavid Robillard <d@drobilla.net>2012-07-26 15:27:03 +0000
committerDavid Robillard <d@drobilla.net>2012-07-26 15:27:03 +0000
commit3c5931bb13b5f88edcebb375fa6964dde8b85563 (patch)
tree9801897576b7fb9d8a9f700847c670f216fc93b7 /src/server/events/CreateNode.cpp
parentb83ed4f83cf4c9b5054dcf55bea710313c369633 (diff)
downloadingen-3c5931bb13b5f88edcebb375fa6964dde8b85563.tar.gz
ingen-3c5931bb13b5f88edcebb375fa6964dde8b85563.tar.bz2
ingen-3c5931bb13b5f88edcebb375fa6964dde8b85563.zip
Report subject with errors to client for more meaningful error messages.
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@4556 a436a847-0d15-0410-975c-d299462d15a1
Diffstat (limited to 'src/server/events/CreateNode.cpp')
-rw-r--r--src/server/events/CreateNode.cpp11
1 files changed, 5 insertions, 6 deletions
diff --git a/src/server/events/CreateNode.cpp b/src/server/events/CreateNode.cpp
index 76f29613..b8e795e8 100644
--- a/src/server/events/CreateNode.cpp
+++ b/src/server/events/CreateNode.cpp
@@ -61,16 +61,16 @@ CreateNode::pre_process()
}
if (_engine.engine_store()->find_object(_path)) {
- return Event::pre_process_done(EXISTS);
+ return Event::pre_process_done(EXISTS, _path.str());
}
if (!(_patch = _engine.engine_store()->find_patch(_path.parent()))) {
- return Event::pre_process_done(PARENT_NOT_FOUND);
+ return Event::pre_process_done(PARENT_NOT_FOUND, _path.parent().str());
}
PluginImpl* plugin = _engine.node_factory()->plugin(_plugin_uri);
if (!plugin) {
- return Event::pre_process_done(PLUGIN_NOT_FOUND);
+ return Event::pre_process_done(PLUGIN_NOT_FOUND, _plugin_uri);
}
const iterator p = _properties.find(uris.ingen_polyphonic);
@@ -84,7 +84,7 @@ CreateNode::pre_process()
polyphonic,
_patch,
_engine))) {
- return Event::pre_process_done(CREATION_FAILED);
+ return Event::pre_process_done(CREATION_FAILED, _path.str());
}
_node->properties().insert(_properties.begin(), _properties.end());
@@ -125,8 +125,7 @@ CreateNode::execute(ProcessContext& context)
void
CreateNode::post_process()
{
- respond(_status);
- if (!_status) {
+ if (!respond()) {
for (Update::const_iterator i = _update.begin(); i != _update.end(); ++i) {
_engine.broadcaster()->put(i->first, i->second);
}