diff options
author | David Robillard <d@drobilla.net> | 2018-03-08 18:36:11 -0500 |
---|---|---|
committer | David Robillard <d@drobilla.net> | 2018-03-08 18:36:11 -0500 |
commit | d35f222ac3ae5828f028b4158aaeb8017227f7ce (patch) | |
tree | 7659a0098924bd9e4fb704ba11cdfde677ae33d4 /src | |
parent | 1f3ea3054b7fe191431c012c92fbcd9e2ee771b6 (diff) | |
download | ingen-d35f222ac3ae5828f028b4158aaeb8017227f7ce.tar.gz ingen-d35f222ac3ae5828f028b4158aaeb8017227f7ce.tar.bz2 ingen-d35f222ac3ae5828f028b4158aaeb8017227f7ce.zip |
Fix cut/copy/paste of arcs
Diffstat (limited to 'src')
-rw-r--r-- | src/Parser.cpp | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/Parser.cpp b/src/Parser.cpp index 291b8851..fe58d995 100644 --- a/src/Parser.cpp +++ b/src/Parser.cpp @@ -565,16 +565,18 @@ parse(Ingen::World* world, const Sord::Node& s = i.first; const std::set<Sord::Node>& types = i.second; boost::optional<Raul::Path> ret; - const Raul::Path rel_path(*get_path(base_uri, s)); - const Raul::Path path = parent ? parent->child(rel_path) : rel_path; if (types.find(graph_class) != types.end()) { ret = parse_graph(world, target, model, base_uri, s, Resource::Graph::INTERNAL, parent, symbol, data); } else if (types.find(block_class) != types.end()) { + const Raul::Path rel_path(*get_path(base_uri, s)); + const Raul::Path path = parent ? parent->child(rel_path) : rel_path; ret = parse_block(world, target, model, base_uri, s, path, data); } else if (types.find(in_port_class) != types.end() || types.find(out_port_class) != types.end()) { + const Raul::Path rel_path(*get_path(base_uri, s)); + const Raul::Path path = parent ? parent->child(rel_path) : rel_path; parse_properties(world, target, model, s, Resource::Graph::DEFAULT, path_to_uri(path), data); |