mirror of
https://github.com/octoleo/syncthing.git
synced 2024-11-18 19:15:19 +00:00
lib/model: Hide temporary files on Windows while they are in use (fixes #4382)
GitHub-Pull-Request: https://github.com/syncthing/syncthing/pull/4394
This commit is contained in:
parent
97222797a0
commit
a365ae51c4
@ -164,6 +164,9 @@ func (s *sharedPullerState) tempFile() (io.WriterAt, error) {
|
|||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Hide the temporary file
|
||||||
|
s.fs.Hide(s.tempName)
|
||||||
|
|
||||||
// Don't truncate symlink files, as that will mean that the path will
|
// Don't truncate symlink files, as that will mean that the path will
|
||||||
// contain a bunch of nulls.
|
// contain a bunch of nulls.
|
||||||
if s.sparse && !s.file.IsSymlink() {
|
if s.sparse && !s.file.IsSymlink() {
|
||||||
@ -307,6 +310,12 @@ func (s *sharedPullerState) finalClose() (bool, error) {
|
|||||||
|
|
||||||
s.closed = true
|
s.closed = true
|
||||||
|
|
||||||
|
// Unhide the temporary file when we close it, as it's likely to
|
||||||
|
// immediately be renamed to the final name. If this is a failed temp
|
||||||
|
// file we will also unhide it, but I'm fine with that as we're now
|
||||||
|
// leaving it around for potentially quite a while.
|
||||||
|
s.fs.Unhide(s.tempName)
|
||||||
|
|
||||||
return true, s.err
|
return true, s.err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user