diff options
author | Evan Klitzke <evan@eklitzke.org> | 2018-03-15 06:54:11 -0700 |
---|---|---|
committer | Luke Dashjr <luke-jr+git@utopios.org> | 2020-08-25 16:46:45 +0000 |
commit | 844d650eea3bd809884cc5dd996a388bdc58314e (patch) | |
tree | 39848f190757cd8f6706d36206da17cc15739d32 /src/util | |
parent | f6cec0bcaf560fa310853ad3fe17022602b63d5f (diff) |
util: Prefer Mac-specific F_FULLSYNC over fdatasync in FileCommit
Diffstat (limited to 'src/util')
-rw-r--r-- | src/util/system.cpp | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/src/util/system.cpp b/src/util/system.cpp index 2dbf13f6b5..01c588b0d3 100644 --- a/src/util/system.cpp +++ b/src/util/system.cpp @@ -1024,16 +1024,16 @@ bool FileCommit(FILE *file) LogPrintf("%s: FlushFileBuffers failed: %d\n", __func__, GetLastError()); return false; } -#elif HAVE_FDATASYNC - if (fdatasync(fileno(file)) != 0 && errno != EINVAL) { // Ignore EINVAL for filesystems that don't support sync - LogPrintf("%s: fdatasync failed: %d\n", __func__, errno); - return false; - } #elif defined(MAC_OSX) && defined(F_FULLFSYNC) if (fcntl(fileno(file), F_FULLFSYNC, 0) == -1) { // Manpage says "value other than -1" is returned on success LogPrintf("%s: fcntl F_FULLFSYNC failed: %d\n", __func__, errno); return false; } +#elif HAVE_FDATASYNC + if (fdatasync(fileno(file)) != 0 && errno != EINVAL) { // Ignore EINVAL for filesystems that don't support sync + LogPrintf("%s: fdatasync failed: %d\n", __func__, errno); + return false; + } #else if (fsync(fileno(file)) != 0 && errno != EINVAL) { LogPrintf("%s: fsync failed: %d\n", __func__, errno); |