fix params permissions after refactor

old-commit-hash: 6f307ea4c560070f1eb7e02218f9de17adc3ab86
This commit is contained in:
Adeeb Shihadeh
2020-10-13 19:14:51 -07:00
parent 8f5ea8a4b8
commit 13a5f5737b
+4 -2
View File
@@ -75,18 +75,20 @@ static int fsync_dir(const char* path){
static int mkdir_p(std::string path) {
char * _path = (char *)path.c_str();
mode_t prev_mask = umask(0);
for (char *p = _path + 1; *p; p++) {
if (*p == '/') {
*p = '\0'; // Temporarily truncate
if (mkdir(_path, 0775) != 0) {
if (mkdir(_path, 0777) != 0) {
if (errno != EEXIST) return -1;
}
*p = '/';
}
}
if (mkdir(_path, 0775) != 0) {
if (mkdir(_path, 0777) != 0) {
if (errno != EEXIST) return -1;
}
umask(prev_mask);
return 0;
}