remove hard link when sanity check failed

See http://git-annex.branchable.com/forum/dot_git_slash_annex_slash_tmp/
This commit is contained in:
Joey Hess 2012-11-29 16:46:59 -04:00
parent 76eb3d858c
commit d2df2e52b4
2 changed files with 7 additions and 1 deletions

View file

@ -213,7 +213,10 @@ handleAdds delayadd cs = returnWhen (null incomplete) $ do
ks <- liftIO $ getSymbolicLinkStatus $ contentLocation keysource
if deviceID ks == deviceID fs && fileID ks == fileID fs
then a
else return Nothing
else do
-- remove the hard link
void $ liftIO $ tryIO $ removeFile $ contentLocation keysource
return Nothing
{- Files can Either be Right to be added now,
- or are unsafe, and must be Left for later.

3
debian/changelog vendored
View file

@ -5,6 +5,9 @@ git-annex (3.20121128) UNRELEASED; urgency=low
* Fix broken .config/git-annex/program installed by standalone tarball.
* assistant: Retrival from glacier now handled.
* Include ssh in standalone tarball and OSX app.
* watch: Avoid leaving hard links to files behind in .git/annex/tmp
if a file is deleted or moved while it's being quarantined in preparation
to being added to the annex.
-- Joey Hess <joeyh@debian.org> Wed, 28 Nov 2012 13:31:07 -0400