summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJay Freeman (saurik) <saurik@saurik.com>2015-09-28 03:08:33 -0700
committerJay Freeman (saurik) <saurik@saurik.com>2015-09-28 03:08:33 -0700
commit31cc0388669af2bf588eb53ad7285df26f47649c (patch)
tree86dc4f800049f974487c682287ce8285a208338d
parent5c3034670da38ee2d42dec42b4c5a5df1815e843 (diff)
downloadldid-31cc0388669af2bf588eb53ad7285df26f47649c.tar.gz
ldid-31cc0388669af2bf588eb53ad7285df26f47649c.tar.zst
ldid-31cc0388669af2bf588eb53ad7285df26f47649c.zip
Windows doesn't use the mode parameter on mkdir().
-rw-r--r--ldid.cpp5
1 files changed, 5 insertions, 0 deletions
diff --git a/ldid.cpp b/ldid.cpp
index 68fdf7d..9aff853 100644
--- a/ldid.cpp
+++ b/ldid.cpp
@@ -1387,8 +1387,13 @@ class Split {
static void mkdir_p(const std::string &path) {
if (path.empty())
return;
+#ifdef __WIN32__
+ if (_syscall(mkdir(path.c_str()), EEXIST) == -EEXIST)
+ return;
+#else
if (_syscall(mkdir(path.c_str(), 0755), EEXIST) == -EEXIST)
return;
+#endif
auto slash(path.rfind('/', path.size() - 1));
if (slash == std::string::npos)
return;