fix: corregeix system_folder_ en macOS i Windows
This commit is contained in:
@@ -475,13 +475,13 @@ void Director::checkProgramArguments(int argc, const char *argv[]) {
|
|||||||
void Director::createSystemFolder(const std::string &folder) {
|
void Director::createSystemFolder(const std::string &folder) {
|
||||||
#ifdef __EMSCRIPTEN__
|
#ifdef __EMSCRIPTEN__
|
||||||
// En Emscripten usamos una carpeta en MEMFS (no persistente)
|
// En Emscripten usamos una carpeta en MEMFS (no persistente)
|
||||||
systemFolder = "/config/" + folder;
|
system_folder_ = "/config/" + folder;
|
||||||
#elif _WIN32
|
#elif _WIN32
|
||||||
systemFolder = std::string(getenv("APPDATA")) + "/" + folder;
|
system_folder_ = std::string(getenv("APPDATA")) + "/" + folder;
|
||||||
#elif __APPLE__
|
#elif __APPLE__
|
||||||
struct passwd *pw = getpwuid(getuid());
|
struct passwd *pw = getpwuid(getuid());
|
||||||
const char *homedir = pw->pw_dir;
|
const char *homedir = pw->pw_dir;
|
||||||
systemFolder = std::string(homedir) + "/Library/Application Support" + "/" + folder;
|
system_folder_ = std::string(homedir) + "/Library/Application Support" + "/" + folder;
|
||||||
#elif __linux__
|
#elif __linux__
|
||||||
struct passwd *pw = getpwuid(getuid());
|
struct passwd *pw = getpwuid(getuid());
|
||||||
const char *homedir = pw->pw_dir;
|
const char *homedir = pw->pw_dir;
|
||||||
@@ -506,7 +506,7 @@ void Director::createSystemFolder(const std::string &folder) {
|
|||||||
if (stat(system_folder_.c_str(), &st) == -1) {
|
if (stat(system_folder_.c_str(), &st) == -1) {
|
||||||
errno = 0;
|
errno = 0;
|
||||||
#ifdef _WIN32
|
#ifdef _WIN32
|
||||||
int ret = mkdir(systemFolder.c_str());
|
int ret = mkdir(system_folder_.c_str());
|
||||||
#else
|
#else
|
||||||
int ret = mkdir(system_folder_.c_str(), S_IRWXU);
|
int ret = mkdir(system_folder_.c_str(), S_IRWXU);
|
||||||
#endif
|
#endif
|
||||||
|
|||||||
Reference in New Issue
Block a user