diff options
author | David Robillard <d@drobilla.net> | 2007-10-13 22:15:26 +0000 |
---|---|---|
committer | David Robillard <d@drobilla.net> | 2007-10-13 22:15:26 +0000 |
commit | 1c92f8782006264e94dd25a650841f72f91650cf (patch) | |
tree | 7791a64365510fc1599cdbdb998ae95e929c84f5 /src/libs/serialisation/Loader.cpp | |
parent | cf63c971c2a8ee8cc2ddcddb52ce8135cd29619b (diff) | |
download | ingen-1c92f8782006264e94dd25a650841f72f91650cf.tar.gz ingen-1c92f8782006264e94dd25a650841f72f91650cf.tar.bz2 ingen-1c92f8782006264e94dd25a650841f72f91650cf.zip |
Dynamic polyphony fixes.
git-svn-id: http://svn.drobilla.net/lad/ingen@883 a436a847-0d15-0410-975c-d299462d15a1
Diffstat (limited to 'src/libs/serialisation/Loader.cpp')
-rw-r--r-- | src/libs/serialisation/Loader.cpp | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/src/libs/serialisation/Loader.cpp b/src/libs/serialisation/Loader.cpp index e1eb3aa6..1e2497fb 100644 --- a/src/libs/serialisation/Loader.cpp +++ b/src/libs/serialisation/Loader.cpp @@ -131,6 +131,8 @@ Loader::load(SharedPtr<EngineInterface> engine, map<const string, const Atom> variable; + rdf_world->mutex().lock(); + for (RDF::Query::Results::iterator i = results.begin(); i != results.end(); ++i) { const string node_name = (*i)["name"].to_string(); @@ -154,6 +156,8 @@ Loader::load(SharedPtr<EngineInterface> engine, if (key != "") engine->set_variable(node_path, key, AtomRedland::rdf_node_to_atom(val_node)); } + + rdf_world->mutex().unlock(); /* Load subpatches */ @@ -166,7 +170,7 @@ Loader::load(SharedPtr<EngineInterface> engine, "}"); results = query.run(*rdf_world, model); - + for (RDF::Query::Results::iterator i = results.begin(); i != results.end(); ++i) { const string name = (*i)["name"].to_string(); |