summaryrefslogtreecommitdiff
path: root/gtk2_ardour/io_selector.cc
diff options
context:
space:
mode:
authorCarl Hetherington <carl@carlh.net>2011-11-09 22:26:16 +0000
committerCarl Hetherington <carl@carlh.net>2011-11-09 22:26:16 +0000
commit419f85be4edc1ec93bbd2aae8f2cd081ece689c3 (patch)
tree6e6010182e4180cc13fcdc070f33846dd81c48ba /gtk2_ardour/io_selector.cc
parent244eaa55fb8c67f7e0d96ed772b09061d2249e61 (diff)
Be a little bit less complainy about setting state that
already exists; useful when the port matrix is in show-only-bundles mode and it is to some extent guessing what connections to make. git-svn-id: svn://localhost/ardour2/branches/3.0@10517 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'gtk2_ardour/io_selector.cc')
-rw-r--r--gtk2_ardour/io_selector.cc8
1 files changed, 6 insertions, 2 deletions
diff --git a/gtk2_ardour/io_selector.cc b/gtk2_ardour/io_selector.cc
index fea21ced0f..f77123a684 100644
--- a/gtk2_ardour/io_selector.cc
+++ b/gtk2_ardour/io_selector.cc
@@ -145,9 +145,13 @@ IOSelector::set_state (ARDOUR::BundleChannel c[2], bool s)
}
if (s) {
- _io->connect (f, *j, 0);
+ if (!f->connected_to (*j)) {
+ _io->connect (f, *j, 0);
+ }
} else {
- _io->disconnect (f, *j, 0);
+ if (f->connected_to (*j)) {
+ _io->disconnect (f, *j, 0);
+ }
}
}
}