diff options
| author | Alex Rønne Petersen <alex@alexrp.com> | 2025-08-21 01:10:35 +0200 |
|---|---|---|
| committer | Andrew Kelley <andrew@ziglang.org> | 2025-08-23 12:32:14 -0700 |
| commit | 77c09d16f9d992b19bc7cb2d2497f8009e0250ba (patch) | |
| tree | 12c3bcb70dd615ef69a2286c3a83ff9a52022579 | |
| parent | 47a2f2ddae9cc47ff6df7a71060bbb3f5f20f2e8 (diff) | |
| download | zig-77c09d16f9d992b19bc7cb2d2497f8009e0250ba.tar.gz zig-77c09d16f9d992b19bc7cb2d2497f8009e0250ba.zip | |
std.fs.Dir: fix updateFile() to flush the file before updating its times
AtomicFile.finish() calls flush() which renders any previous updateTimes() calls
useless. Regression introduced in f2a3ac7c0534a74ee544fdf6ef9d2176a8d62389.
Closes #24927.
| -rw-r--r-- | lib/std/fs/Dir.zig | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/lib/std/fs/Dir.zig b/lib/std/fs/Dir.zig index 16418d216f..768efdeff5 100644 --- a/lib/std/fs/Dir.zig +++ b/lib/std/fs/Dir.zig @@ -2583,8 +2583,9 @@ pub fn updateFile( error.ReadFailed => return src_reader.err.?, error.WriteFailed => return atomic_file.file_writer.err.?, }; + try atomic_file.flush(); try atomic_file.file_writer.file.updateTimes(src_stat.atime, src_stat.mtime); - try atomic_file.finish(); + try atomic_file.renameIntoPlace(); return .stale; } |
