summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/engine/Engine.cpp3
-rw-r--r--src/ingen/main.cpp24
2 files changed, 15 insertions, 12 deletions
diff --git a/src/engine/Engine.cpp b/src/engine/Engine.cpp
index 49f6e10c..23316bdf 100644
--- a/src/engine/Engine.cpp
+++ b/src/engine/Engine.cpp
@@ -150,8 +150,7 @@ Engine::main()
bool
Engine::main_iteration()
{
- // Run the maid (garbage collector)
- _post_processor->process();
+ _post_processor->process();
_maid->cleanup();
return !_quit_flag;
diff --git a/src/ingen/main.cpp b/src/ingen/main.cpp
index 94f20aef..f1f2aa1c 100644
--- a/src/ingen/main.cpp
+++ b/src/ingen/main.cpp
@@ -241,19 +241,23 @@ main(int argc, char** argv)
/* Load a patch */
if (args.load_given && engine_interface) {
- boost::optional<Path> data_path;
+ boost::optional<Path> data_path = Path("/");
boost::optional<Path> parent;
boost::optional<Symbol> symbol;
- const Glib::ustring path = (args.path_given ? args.path_arg : "/");
- if (Path::is_valid(path)) {
- const Path p(path);
- parent = p.parent();
- const string s = p.name();
- if (Symbol::is_valid(s))
- symbol = s;
- } else {
- cerr << "Invalid path: '" << path << endl;
+ if (args.path_given) {
+ const Glib::ustring path = args.path_arg;
+ if (Path::is_valid(path)) {
+ const Path p(path);
+ if (p != "/") {
+ parent = p.parent();
+ const string s = p.name();
+ if (Symbol::is_valid(s))
+ symbol = s;
+ }
+ } else {
+ cerr << "Invalid path given: '" << path << endl;
+ }
}
bool found = false;