diff options
author | Robin Gareus <robin@gareus.org> | 2015-09-11 13:14:27 +0200 |
---|---|---|
committer | Robin Gareus <robin@gareus.org> | 2015-09-11 13:14:27 +0200 |
commit | 9fcc48d140ffcb2d22ca92952047b31337ee9b1c (patch) | |
tree | b206182b30a781d2dc76847fe30c38cdf2d2bbbc /libs/ardour/session.cc | |
parent | 6f038a61b5831d3edc885657355dda900e6e6b28 (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.
Diffstat (limited to 'libs/ardour/session.cc')
-rw-r--r-- | libs/ardour/session.cc | 5 |
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); |