diff --git a/CHANGELOG.md b/CHANGELOG.md index 2504f2a5..7ebc37e6 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,7 +4,6 @@ * Fallback if RENAME_EXCHANGE is not supportd by the filesystem * Assume POSIX compatibility if `sys.platform` is not `win32` -* Assume `F_FULLFSYNC` always exists if `sys.platform` is `darwin` ## 3.1.3 diff --git a/radicale/pathutils.py b/radicale/pathutils.py index 448817ea..56e6fa08 100644 --- a/radicale/pathutils.py +++ b/radicale/pathutils.py @@ -193,7 +193,7 @@ def rename_exchange(src: str, dst: str) -> None: def fsync(fd: int) -> None: - if sys.platform == "darwin": + if sys.platform != "win32" and hasattr(fcntl, "F_FULLFSYNC"): fcntl.fcntl(fd, fcntl.F_FULLFSYNC) else: os.fsync(fd)