nub list after adding ocal uuid to it

This potentially fixes a numcopies counting bug when dropping --from a
remote, and the local repository is trusted. The local repo would end up in
the list twice, so it would verify one less copy than it was supposed to.
This commit is contained in:
Joey Hess 2015-04-30 13:13:28 -04:00
parent cf306c261b
commit 9e10b5ca9c

View file

@ -93,14 +93,11 @@ performRemote key afile numcopies remote = do
-- When the local repo has the key, that's one additional copy, -- When the local repo has the key, that's one additional copy,
-- as long asthe local repo is not untrusted. -- as long asthe local repo is not untrusted.
(remotes, trusteduuids) <- Remote.keyPossibilitiesTrusted key (remotes, trusteduuids) <- Remote.keyPossibilitiesTrusted key
present <- inAnnex key
u <- getUUID u <- getUUID
trusteduuids' <- if present trusteduuids' <- ifM (inAnnex key <&&> (<= SemiTrusted) <$> lookupTrust u)
then ifM ((<= SemiTrusted) <$> lookupTrust u) ( pure (nub (u:trusteduuids))
( pure (u:trusteduuids) , pure trusteduuids
, pure trusteduuids )
)
else pure trusteduuids
let have = filter (/= uuid) trusteduuids' let have = filter (/= uuid) trusteduuids'
untrusteduuids <- trustGet UnTrusted untrusteduuids <- trustGet UnTrusted
let tocheck = filter (/= remote) $ let tocheck = filter (/= remote) $