summaryrefslogtreecommitdiff
path: root/Annex
diff options
context:
space:
mode:
Diffstat (limited to 'Annex')
-rw-r--r--Annex/Transfer.hs6
1 files changed, 5 insertions, 1 deletions
diff --git a/Annex/Transfer.hs b/Annex/Transfer.hs
index 55a8d39f7..90aaa59c9 100644
--- a/Annex/Transfer.hs
+++ b/Annex/Transfer.hs
@@ -94,8 +94,12 @@ runTransfer' ignorelock t file shouldretry transferobserver transferaction = do
return observeFailure
else do
v <- retry info metervar $ transferaction meter
+ let ok = observeBool v
liftIO $ cleanup tfile lck
- transferobserver (observeBool v) t info
+ if ok
+ then removeFailedTransfer t
+ else recordFailedTransfer t info
+ transferobserver ok t info
return v
where
#ifndef mingw32_HOST_OS