File writes are safer on the fallback path and refuse to follow a symlink at the destination.
What's wrong with this entry?
When rename fails, the atomic-write fallback now writes content straight to the destination instead of copying the temp file over it.
- applies to both the sync and async fallbacks
- the destination is opened with
O_WRONLY|O_CREAT|O_TRUNC|O_NOFOLLOW, so a symlink at the path is refused rather than followed - permissions are applied by chmod on the open descriptor
- on failure the descriptor is closed and the partial destination is unlinked
U1.constants.O_NOFOLLOW
Strings lifted out of the shipped bundle, so the claim above can be checked against them.
Related
Other releases about the same thing. Found by shared names or similar wording; neither means one caused the other.
-
v2.1.229
Truncating a file to empty is no longer skipped
Both mention file write
-
v2.1.242
Artifact
write_dbaccepts a batch of writes under one approvalBoth mention write
-
v2.1.239
File uploads report why they failed and stop retrying forever
Both mention file