fix removal from local gcrypt repo that had files stored using rsync
When files are stored using rsync, they have their write bit removed; so does the directory they're put in. The local repo code did not turn these bits back on, so failed to remove.
This commit is contained in:
parent
8601f8f571
commit
d12becfdde
2 changed files with 7 additions and 2 deletions
|
@ -45,6 +45,7 @@ import Utility.Tmp
|
||||||
import Logs.Remote
|
import Logs.Remote
|
||||||
import Logs.Transfer
|
import Logs.Transfer
|
||||||
import Utility.Gpg
|
import Utility.Gpg
|
||||||
|
import Utility.FileMode
|
||||||
|
|
||||||
remote :: RemoteType
|
remote :: RemoteType
|
||||||
remote = RemoteType {
|
remote = RemoteType {
|
||||||
|
@ -325,7 +326,12 @@ retrieve r rsyncopts
|
||||||
remove :: Remote -> Remote.Rsync.RsyncOpts -> Key -> Annex Bool
|
remove :: Remote -> Remote.Rsync.RsyncOpts -> Key -> Annex Bool
|
||||||
remove r rsyncopts k
|
remove r rsyncopts k
|
||||||
| not $ Git.repoIsUrl (repo r) = guardUsable (repo r) False $ do
|
| not $ Git.repoIsUrl (repo r) = guardUsable (repo r) False $ do
|
||||||
liftIO $ removeDirectoryRecursive $ parentDir $ gCryptLocation r k
|
let f = gCryptLocation r k
|
||||||
|
let d = parentDir f
|
||||||
|
liftIO $ do
|
||||||
|
allowWrite d
|
||||||
|
allowWrite f
|
||||||
|
removeDirectoryRecursive d
|
||||||
return True
|
return True
|
||||||
| Git.repoIsSsh (repo r) = shellOrRsync r removeshell removersync
|
| Git.repoIsSsh (repo r) = shellOrRsync r removeshell removersync
|
||||||
| otherwise = unsupportedUrl
|
| otherwise = unsupportedUrl
|
||||||
|
|
1
debian/changelog
vendored
1
debian/changelog
vendored
|
@ -21,7 +21,6 @@ git-annex (5.20140718) UNRELEASED; urgency=medium
|
||||||
* Dropping an object from a bup special remote now deletes the git branch
|
* Dropping an object from a bup special remote now deletes the git branch
|
||||||
for the object, although of course the object's content cannot be deleted
|
for the object, although of course the object's content cannot be deleted
|
||||||
due to the nature of bup.
|
due to the nature of bup.
|
||||||
*
|
|
||||||
|
|
||||||
-- Joey Hess <joeyh@debian.org> Mon, 21 Jul 2014 14:41:26 -0400
|
-- Joey Hess <joeyh@debian.org> Mon, 21 Jul 2014 14:41:26 -0400
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue