diff --git a/libs/ardour/session.cc b/libs/ardour/session.cc index 7eb608ff29..f57731b245 100644 --- a/libs/ardour/session.cc +++ b/libs/ardour/session.cc @@ -3758,9 +3758,12 @@ Session::io_name_is_legal (const std::string& name) for (vector::const_iterator reserved = reserved_io_names.begin(); reserved != reserved_io_names.end(); ++reserved) { if (name == *reserved) { - if (route_by_name (*reserved)) { - return false; + if (!route_by_name (*reserved)) { + /* first instance of a reserved name is allowed */ + return true; } + /* all other instances of a reserved name are not allowed */ + return false; } }