]> git.tdb.fi Git - builder.git/blobdiff - source/virtualfilesystem.cpp
Use getenv from mspcore
[builder.git] / source / virtualfilesystem.cpp
index 36fe1c129190e83ebd7736e7557a2619d27e9db8..e240fb9e777b74590f39dfe23d2d417d18fb7303 100644 (file)
@@ -1,4 +1,4 @@
-#include <cstdlib>
+#include <msp/core/environ.h>
 #include <msp/fs/stat.h>
 #include <msp/fs/utils.h>
 #include <msp/io/print.h>
@@ -144,16 +144,20 @@ FileTarget *VirtualFileSystem::find_binary(const string &name)
        SearchPath path;
        if(FS::Path(name).is_absolute())
                path.push_back("/");
-       else if(const char *env_path = getenv("PATH"))
-       {
-               vector<string> parts = split(env_path, ':');
-               for(vector<string>::const_iterator i=parts.begin(); i!=parts.end(); ++i)
-                       path.push_back(*i);
-       }
        else
        {
-               path.push_back("/bin");
-               path.push_back("/usr/bin");
+               string env_path = Msp::getenv("PATH");
+               if(!env_path.empty())
+               {
+                       vector<string> parts = split(env_path, ':');
+                       for(vector<string>::const_iterator i=parts.begin(); i!=parts.end(); ++i)
+                               path.push_back(*i);
+               }
+               else
+               {
+                       path.push_back("/bin");
+                       path.push_back("/usr/bin");
+               }
        }
 
        for(SearchPath::const_iterator i=path.begin(); i!=path.end(); ++i)