diff options
author | Paul Davis <paul@linuxaudiosystems.com> | 2007-10-31 18:24:43 +0000 |
---|---|---|
committer | Paul Davis <paul@linuxaudiosystems.com> | 2007-10-31 18:24:43 +0000 |
commit | 8ab17e96312f1a61c014c50687e15430d5ae786b (patch) | |
tree | eefb889cd64d48058a608f0c19185b2a56d73399 /libs/ardour/audio_diskstream.cc | |
parent | 1b0f6b1d69bcad74c6127690cebc1c14486e8c1d (diff) |
new port design, probably about 90% done (i.e it mostly works and this commit is to stop anyone else from stomping on my changes :)
git-svn-id: svn://localhost/ardour2/trunk@2579 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'libs/ardour/audio_diskstream.cc')
-rw-r--r-- | libs/ardour/audio_diskstream.cc | 14 |
1 files changed, 5 insertions, 9 deletions
diff --git a/libs/ardour/audio_diskstream.cc b/libs/ardour/audio_diskstream.cc index fbe12e6bf5..c4b2c06e15 100644 --- a/libs/ardour/audio_diskstream.cc +++ b/libs/ardour/audio_diskstream.cc @@ -212,13 +212,14 @@ AudioDiskstream::get_input_sources () uint32_t n; ChannelList::iterator chan; uint32_t ni = _io->n_inputs().n_audio(); + vector<string> connections; for (n = 0, chan = c->begin(); chan != c->end() && n < ni; ++chan, ++n) { - const char **connections = _io->input(n)->get_connections (); + connections.clear (); + + if (_io->input(n)->get_connections (connections) == 0) { - if (connections == 0 || connections[0] == 0) { - if ((*chan)->source) { // _source->disable_metering (); } @@ -226,12 +227,7 @@ AudioDiskstream::get_input_sources () (*chan)->source = 0; } else { - (*chan)->source = dynamic_cast<AudioPort*>( - _session.engine().get_port_by_name (connections[0]) ); - } - - if (connections) { - free (connections); + (*chan)->source = dynamic_cast<AudioPort*>(_session.engine().get_port_by_name (connections[0]) ); } } } |