diff options
author | Paul Davis <paul@linuxaudiosystems.com> | 2015-11-07 22:15:59 -0500 |
---|---|---|
committer | Paul Davis <paul@linuxaudiosystems.com> | 2015-11-07 22:16:07 -0500 |
commit | 3d5bdbbe6633c7b837e530686bdc3a3496179b42 (patch) | |
tree | 586deab538d66c48c42f0beb4643afeb908d2536 /libs | |
parent | 09672f4a5048ea31b30be80f092778724d06101e (diff) |
don't force rename of reserved route/IO names if the name isn't taken yet
Diffstat (limited to 'libs')
-rw-r--r-- | libs/ardour/session.cc | 17 |
1 files changed, 13 insertions, 4 deletions
diff --git a/libs/ardour/session.cc b/libs/ardour/session.cc index a3b82d9d4b..900be1afbc 100644 --- a/libs/ardour/session.cc +++ b/libs/ardour/session.cc @@ -2214,9 +2214,14 @@ Session::find_route_name (string const & base, uint32_t& id, string& name, bool for (vector<string>::const_iterator reserved = reserved_io_names.begin(); reserved != reserved_io_names.end(); ++reserved) { if (base == *reserved) { - definitely_add_number = true; - if (id < 1) { - id = 1; + /* Check if this reserved name already exists, and if + so, disallow it without a numeric suffix. + */ + if (route_by_name (*reserved)) { + definitely_add_number = true; + if (id < 1) { + id = 1; + } } break; } @@ -3753,7 +3758,11 @@ Session::io_name_is_legal (const std::string& name) for (vector<string>::const_iterator reserved = reserved_io_names.begin(); reserved != reserved_io_names.end(); ++reserved) { if (name == *reserved) { - return false; + if (route_by_name (*reserved)) { + return false; + } else { + return true; + } } } |