status: Fix a crash if a temp file went away while its size was being checked for status.

This commit is contained in:
Joey Hess 2013-10-13 13:30:24 -04:00
parent 03fc341dcb
commit 68518a9b3d
2 changed files with 6 additions and 3 deletions

View file

@ -371,10 +371,11 @@ staleSize label dirspec = go =<< lift (Command.Unused.staleKeys dirspec)
onsize size = stat label $
json (++ aside "clean up with git-annex unused") $
return $ roughSize storageUnits False size
keysizes keys = map (fromIntegral . fileSize) <$> stats keys
stats keys = do
keysizes keys = do
dir <- lift $ fromRepo dirspec
liftIO $ forM keys $ \k -> getFileStatus (dir </> keyFile k)
liftIO $ forM keys $ \k -> catchDefaultIO 0 $
fromIntegral . fileSize
<$> getFileStatus (dir </> keyFile k)
aside :: String -> String
aside s = " (" ++ s ++ ")"

2
debian/changelog vendored
View file

@ -15,6 +15,8 @@ git-annex (4.20131003) UNRELEASED; urgency=low
* Remove bogus runshell loop check.
* addurl: Improve message when adding url with wrong size to existing file.
* Fixed handling of URL keys that have no recorded size.
* status: Fix a crash if a temp file went away while its size was
being checked for status.
-- Joey Hess <joeyh@debian.org> Thu, 03 Oct 2013 15:41:24 -0400