39fbaa0682
When a command is operating on multiple files and there's an error with one, try harder to continue to the rest. (As was already done for many types of errors including IO errors.) This handles cases like lockContentForRemoval throwing an exception when the content is already locked. Just because a drop of one file fails, does not mean it shouldn't go on to try to drop other files. I looked over uses of `giveup` in Command/*; there are too many to check them all extensively, but none stood out as being problems that should let one commandAction stop running other commandActions. Worst case, something bad will happen and rather than stopping right away with an error, git-annex will display multiple errors as it fails over and over on each file. I don't think I ever really intended `error`/`giveup` to stop other commandActions; this was a relic of old confusion over haskell exception handling. Test suite passes. This commit was sponsored by Ethan Aubin. |
||
---|---|---|
.. | ||
GitAnnex | ||
GitAnnexShell | ||
Action.hs | ||
Batch.hs | ||
GitAnnex.hs | ||
GitAnnexShell.hs | ||
GitRemoteTorAnnex.hs | ||
GlobalSetter.hs | ||
Option.hs | ||
Seek.hs | ||
Usage.hs |