summaryrefslogtreecommitdiffstats
path: root/src/JackDriver.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/JackDriver.cpp')
-rw-r--r--src/JackDriver.cpp9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/JackDriver.cpp b/src/JackDriver.cpp
index 5572769..761c1c2 100644
--- a/src/JackDriver.cpp
+++ b/src/JackDriver.cpp
@@ -18,6 +18,7 @@
#include <cassert>
#include <cstring>
#include <string>
+#include <set>
#include <iostream>
#include "config.h"
#include <jack/jack.h>
@@ -202,6 +203,8 @@ JackDriver::refresh()
string port1_name;
string client2_name;
string port2_name;
+
+ set<SharedPtr<PatchageModule> > resized_modules;
// Add all ports
if (ports)
@@ -258,7 +261,7 @@ JackDriver::refresh()
m->add_port(create_port(m, port));
}
- m->resize();
+ resized_modules.insert(m);
}
// Add all connections
@@ -320,6 +323,10 @@ JackDriver::refresh()
free(connected_ports);
}
}
+
+ for (set<SharedPtr<PatchageModule> >::const_iterator i = resized_modules.begin();
+ i != resized_modules.end(); ++i)
+ (*i)->resize();
free(ports);
}