fsync_dir: remove goto (#2498)
old-commit-hash: 1bd1c961efccfa99936dd7e096356af3fa5243ed
This commit is contained in:
@@ -49,30 +49,17 @@ void params_sig_handler(int signal) {
|
||||
}
|
||||
|
||||
static int fsync_dir(const char* path){
|
||||
int result = 0;
|
||||
int fd = open(path, O_RDONLY, 0755);
|
||||
|
||||
if (fd < 0){
|
||||
result = -1;
|
||||
goto cleanup;
|
||||
}
|
||||
|
||||
result = fsync(fd);
|
||||
if (result < 0) {
|
||||
goto cleanup;
|
||||
}
|
||||
|
||||
cleanup:
|
||||
int result_close = 0;
|
||||
if (fd >= 0){
|
||||
result_close = close(fd);
|
||||
return -1;
|
||||
}
|
||||
|
||||
int result = fsync(fd);
|
||||
int result_close = close(fd);
|
||||
if (result_close < 0) {
|
||||
return result_close;
|
||||
} else {
|
||||
return result;
|
||||
result = result_close;
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
static int mkdir_p(std::string path) {
|
||||
|
||||
Reference in New Issue
Block a user