summaryrefslogtreecommitdiff
path: root/Usage.hs
diff options
context:
space:
mode:
authorGravatar Joey Hess <joey@kitenet.net>2012-01-16 16:28:07 -0400
committerGravatar Joey Hess <joey@kitenet.net>2012-01-16 16:28:15 -0400
commitf161b5eb596839d54c006a68e875088a9d66c105 (patch)
tree6d5cbdd08c7a100cb6da871963ab6e142f8ab59e /Usage.hs
parent0c4f12e8a2742dc6f7703822034152ecb518e2cc (diff)
Fix data loss bug in directory special remote
When moving a file to the remote failed, and partially transferred content was left behind in the directory, re-running the same move would think it succeeded and delete the local copy. I reproduced data loss when moving files to a partition that was almost full. Interrupting a transfer could have similar results. Easily fixed by using a temp file which is then moved atomically into place once the transfer completes. I've audited other calls to copyFileExternal, and other special remote file transfer code; everything else seems to use temp files correctly (rsync, git), or otherwise use atomic transfers (bup, S3).
Diffstat (limited to 'Usage.hs')
0 files changed, 0 insertions, 0 deletions