summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobin Gareus <robin@gareus.org>2015-09-11 13:14:27 +0200
committerRobin Gareus <robin@gareus.org>2015-09-11 13:14:27 +0200
commit9fcc48d140ffcb2d22ca92952047b31337ee9b1c (patch)
treeb206182b30a781d2dc76847fe30c38cdf2d2bbbc
parent6f038a61b5831d3edc885657355dda900e6e6b28 (diff)
fail to create Monitor section if port-names are not unique
We should still prevent a user from naming a route "Monitor", but since "Monitor" is a translatable string, this is an i18n safeguard. eg. - create a session with a mon-section and a track Монитор. - send the session to a friend in Russia.
-rw-r--r--libs/ardour/session.cc5
1 files changed, 4 insertions, 1 deletions
diff --git a/libs/ardour/session.cc b/libs/ardour/session.cc
index 99e3bdd958..46f8b18b6e 100644
--- a/libs/ardour/session.cc
+++ b/libs/ardour/session.cc
@@ -1028,10 +1028,13 @@ Session::add_monitor_section ()
#ifdef BOOST_SP_ENABLE_DEBUG_HOOKS
// boost_debug_shared_ptr_mark_interesting (r.get(), "Route");
#endif
- {
+ try {
Glib::Threads::Mutex::Lock lm (AudioEngine::instance()->process_lock ());
r->input()->ensure_io (_master_out->output()->n_ports(), false, this);
r->output()->ensure_io (_master_out->output()->n_ports(), false, this);
+ } catch (...) {
+ error << _("Cannot create monitor section. 'Monitor' Port name is not unique.") << endmsg;
+ return;
}
rl.push_back (r);