fix handling ./ and ../ in NSD

git-svn-id: svn://localhost/ardour2/branches/2.0-ongoing@2898 d708f5d6-7413-0410-9779-e7cbd77b26cf
This commit is contained in:
Paul Davis 2008-01-11 21:04:45 +00:00
parent a56b852a2b
commit d8457cdddf

View file

@ -546,11 +546,11 @@ NewSessionDialog::set_session_folder(const Glib::ustring& dir)
if (!Glib::path_is_absolute (realdir)) {
if (realdir.length() == 1 && realdir[0] == '.') {
realdir.replace (0, 1, Glib::get_current_dir());
} else if (realdir.length() > 1 && realdir[0] == '.' && realdir[1] != '.') {
} else if (realdir.length() > 1 && realdir[0] == '.' && realdir[1] == '/') {
realdir.replace (0, 1, Glib::get_current_dir());
} else if (realdir.length() == 2 && realdir[0] == '.' && realdir[1] == '.') {
realdir.replace (0, 2, Glib::path_get_dirname (Glib::get_current_dir()));
} else if (realdir.length() > 2 && realdir[0] == '.' && realdir[1] == '.') {
} else if (realdir.length() > 2 && realdir[0] == '.' && realdir[1] == '.' && realdir[2] == '/') {
realdir.replace (0, 2, Glib::path_get_dirname (Glib::get_current_dir()));
} else {
error << string_compose (_("Non-absolute path \"%1\" not usable - ignored"), realdir) << endmsg;