make session/Config now responsible for adding/removing a monitor section
[ardour.git] / libs / ardour / system_exec.cc
index d5c3f31903079b6cca33eb99f42c09495be8c3dc..aec89564223511a08834ca51b2e180850d16e010 100644 (file)
@@ -25,7 +25,7 @@
 #include "ardour/filesystem_paths.h"
 #include "ardour/system_exec.h"
 
-using namespace ARDOUR;
+namespace ARDOUR {
 
 char * SystemExec::_vfork_exec_wrapper = NULL;
 
@@ -34,11 +34,14 @@ static char *vfork_exec_wrapper_path() {
        return NULL;
 #else
        std::string vfork_exec_wrapper;
-       if (!PBD::find_file_in_search_path (
-                               PBD::Searchpath(Glib::build_filename(ARDOUR::ardour_dll_directory(), "vfork")),
+       if (!PBD::find_file (
+                               PBD::Searchpath(
+                                       ARDOUR::ardour_dll_directory() // deployed
+                                       + G_SEARCHPATH_SEPARATOR_S + Glib::build_filename(ARDOUR::ardour_dll_directory(), "vfork") // src, build (ardev, etc)
+                                       ),
                                "ardour-exec-wrapper", vfork_exec_wrapper)) {
-               PBD::warning << "vfork exec wrapper not found..'" << endmsg;
-               return NULL;
+               PBD::fatal << "vfork exec wrapper 'ardour-exec-wrapper' was not found in $PATH." << endmsg;
+               abort(); /*NOTREACHED*/
        }
        return strdup(vfork_exec_wrapper.c_str());
 #endif
@@ -75,3 +78,5 @@ SystemExec::SystemExec (std::string c, const std::map<char, std::string> subs)
 }
 
 SystemExec::~SystemExec() { }
+
+} // namespace ARDOUR