Mercurial > public > mercurial-scm > hg
diff rust/hg-core/src/vfs.rs @ 52345:a48c688d3e80
rhg: set the expected dirstate permissions (0o666 minus umask)
This is what Python code does, and users in multiuser environments
rely on this behavior.
(we've been maintaining a private patch that fixes this for a long time)
author | Arseniy Alekseyev <aalekseyev@janestreet.com> |
---|---|
date | Wed, 27 Nov 2024 15:14:18 +0000 |
parents | 33d8cb64e9da |
children |
line wrap: on
line diff
--- a/rust/hg-core/src/vfs.rs Tue Nov 26 16:21:00 2024 +0000 +++ b/rust/hg-core/src/vfs.rs Wed Nov 27 15:14:18 2024 +0000 @@ -178,7 +178,9 @@ relative_path: impl AsRef<Path>, contents: &[u8], ) -> Result<(), HgError> { - let mut tmp = tempfile::NamedTempFile::new_in(&self.base) + let mut tmp = tempfile::Builder::new() + .permissions(std::fs::Permissions::from_mode(0o666)) + .tempfile_in(&self.base) .when_writing_file(&self.base)?; tmp.write_all(contents) .and_then(|()| tmp.flush())