From 498dfebcca3b97cdd7b83444040042fe06626241 Mon Sep 17 00:00:00 2001 From: Paul Davis Date: Mon, 9 Nov 2009 20:05:18 +0000 Subject: 90% done with external sync design changes (GUI now has toggle switch for ext/int sync; source chosen separately, currently in ardour prefs dialog ; fix libmidi++ and compilation scripts to correctly build JACK+ALSA support; minor contiuing tweaks on transport stuff git-svn-id: svn://localhost/ardour2/branches/3.0@6048 d708f5d6-7413-0410-9779-e7cbd77b26cf --- libs/ardour/rc_configuration.cc | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'libs/ardour/rc_configuration.cc') diff --git a/libs/ardour/rc_configuration.cc b/libs/ardour/rc_configuration.cc index f04c148ab7..b34a6fd1ee 100644 --- a/libs/ardour/rc_configuration.cc +++ b/libs/ardour/rc_configuration.cc @@ -203,6 +203,8 @@ RCConfiguration::get_state () MIDI::Manager::PortMap::const_iterator i; const MIDI::Manager::PortMap& ports = MIDI::Manager::instance()->get_midi_ports(); + cerr << "Saving " << ports.size() << " MIDI ports\n"; + for (i = ports.begin(); i != ports.end(); ++i) { root->add_child_nocopy(i->second->get_state()); } @@ -260,8 +262,11 @@ RCConfiguration::set_state (const XMLNode& root, int /*version*/) MIDI::Port::Descriptor desc (*node); map::iterator x; + if ((x = midi_ports.find (desc.tag)) != midi_ports.end()) { - midi_ports.erase (x); + warning << string_compose (_("Duplicate MIDI port definition found (tag=\"%1\") - ignored"), + desc.tag) << endmsg; + continue; } midi_ports.insert (pair(desc.tag,*node)); } -- cgit v1.2.3