diff --git a/desktop_version/src/FileSystemUtils.cpp b/desktop_version/src/FileSystemUtils.cpp index 002a5a01..1fb3d769 100644 --- a/desktop_version/src/FileSystemUtils.cpp +++ b/desktop_version/src/FileSystemUtils.cpp @@ -18,24 +18,16 @@ #include "tinyxml2.h" +/* These are needed for PLATFORM_* crap */ #if defined(_WIN32) #include #include #include -int mkdir(char* path, int mode) -{ - WCHAR utf16_path[MAX_PATH]; - MultiByteToWideChar(CP_UTF8, 0, path, -1, utf16_path, MAX_PATH); - return CreateDirectoryW(utf16_path, NULL); -} -#define VNEEDS_MIGRATION (mkdirResult != 0) #elif defined(__linux__) || defined(__APPLE__) || defined(__FreeBSD__) || defined(__OpenBSD__) || defined(__HAIKU__) || defined(__DragonFly__) -#include -#include -#define VNEEDS_MIGRATION (mkdirResult == 0) -/* These are needed for PLATFORM_* crap */ #include #include +#include +#include #include #include #include @@ -75,7 +67,7 @@ int FILESYSTEM_init(char *argvZero, char* baseDir, char *assetsPath) } /* Create base user directory, mount */ - mkdirResult = mkdir(output, 0777); + mkdirResult = PHYSFS_mkdir(output); /* Mount our base user directory */ PHYSFS_mount(output, NULL, 0); @@ -86,18 +78,18 @@ int FILESYSTEM_init(char *argvZero, char* baseDir, char *assetsPath) strcpy(saveDir, output); strcat(saveDir, "saves"); strcat(saveDir, PHYSFS_getDirSeparator()); - mkdir(saveDir, 0777); + PHYSFS_mkdir(saveDir); printf("Save directory: %s\n", saveDir); /* Create level directory */ strcpy(levelDir, output); strcat(levelDir, "levels"); strcat(levelDir, PHYSFS_getDirSeparator()); - mkdirResult |= mkdir(levelDir, 0777); + mkdirResult |= PHYSFS_mkdir(levelDir); printf("Level directory: %s\n", levelDir); /* We didn't exist until now, migrate files! */ - if (VNEEDS_MIGRATION) + if (mkdirResult != 0) { PLATFORM_migrateSaveData(output); }