]> git.tdb.fi Git - libs/core.git/blobdiff - source/fs/osx/dir_location.cpp
Add wrappers for environment manipulation functions
[libs/core.git] / source / fs / osx / dir_location.cpp
index 7ce89f7a33de31bdf83e76d31c3da513811ca437..b58b971961e25cdb83db4abe9f51e31c917c0fef 100644 (file)
@@ -1,3 +1,5 @@
+#include <msp/core/application.h>
+#include <msp/core/environ.h>
 #include "dir.h"
 
 using namespace std;
@@ -15,15 +17,19 @@ Path get_home_dir()
        if(len)
                return string(buf, len);
 
-       const char *home = getenv("HOME");
-       if(home)
+       string home = getenv("HOME");
+       if(!home.empty())
                return home;
 
        return ".";
 }
 
-Path get_user_data_dir(const string &appname)
+Path get_user_data_dir()
 {
+       const string &appname = Application::get_name();
+       if(appname.empty())
+               throw logic_error("no application name");
+
        char buf[1024];
        unsigned len = get_application_support_dir(buf, sizeof(buf));
        if(len)