diff --git a/libs/surfaces/generic_midi/generic_midi_control_protocol.cc b/libs/surfaces/generic_midi/generic_midi_control_protocol.cc index 57705e6777..12c81a7339 100644 --- a/libs/surfaces/generic_midi/generic_midi_control_protocol.cc +++ b/libs/surfaces/generic_midi/generic_midi_control_protocol.cc @@ -22,6 +22,7 @@ #include #include +#include #include #include "pbd/controllable_descriptor.h" @@ -120,11 +121,12 @@ system_midi_map_search_path () spath.add_subdirectory_to_paths(midi_map_dir_name); // just return the first directory in the search path that exists - SearchPath::const_iterator i = std::find_if(spath.begin(), spath.end(), sys::exists); - - if (i == spath.end()) return sys::path(); - - return *i; + for (SearchPath::const_iterator i = spath.begin(); i != spath.end(); ++i) { + if (Glib::file_test (*i, Glib::FILE_TEST_EXISTS)) { + return *i; + } + } + return sys::path(); } static sys::path