summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--libs/ardour/file_source.cc17
1 files changed, 8 insertions, 9 deletions
diff --git a/libs/ardour/file_source.cc b/libs/ardour/file_source.cc
index 30ae2178fe..5833d29e3a 100644
--- a/libs/ardour/file_source.cc
+++ b/libs/ardour/file_source.cc
@@ -256,8 +256,6 @@ FileSource::find (Session& s, DataType type, const string& path, bool must_exist
split (search_path, dirs, ':');
- hits.clear ();
-
for (vector<string>::iterator i = dirs.begin(); i != dirs.end(); ++i) {
fullpath = Glib::build_filename (*i, path);
@@ -312,9 +310,9 @@ FileSource::find (Session& s, DataType type, const string& path, bool must_exist
/* no match: error */
if (must_exist) {
- error << string_compose(
- _("Filesource: cannot find required file (%1): while searching %2"),
- path, search_path) << endmsg;
+ /* do not generate an error here, leave that to
+ whoever deals with the false return value.
+ */
goto out;
} else {
isnew = true;
@@ -325,16 +323,17 @@ FileSource::find (Session& s, DataType type, const string& path, bool must_exist
keeppath = de_duped_hits[0];
}
-
- } else {
+
+ } else {
keeppath = path;
}
/* Current find() is unable to parse relative path names to yet non-existant
sources. QuickFix(tm)
*/
- if (keeppath == "") {
- if (must_exist) {
+
+ if (keeppath.empty()) {
+ if (must_exist) {
error << "FileSource::find(), keeppath = \"\", but the file must exist" << endl;
} else {
keeppath = path;