summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--CHANGELOG1
-rw-r--r--Remote/Directory.hs5
2 files changed, 4 insertions, 2 deletions
diff --git a/CHANGELOG b/CHANGELOG
index faa05e3d2..ae02be0a9 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -10,6 +10,7 @@ git-annex (6.20171027) UNRELEASED; urgency=medium
Thanks, Eric Siegerman
* Makefile improvement for BUILDER=stack, use stack to run ghc.
* testremote: Test exporttree.
+ * Fix directory special remote's cleanup of empty export directories.
-- Joey Hess <id@joeyh.name> Mon, 30 Oct 2017 12:01:45 -0400
diff --git a/Remote/Directory.hs b/Remote/Directory.hs
index 406af0fdc..f44961ce2 100644
--- a/Remote/Directory.hs
+++ b/Remote/Directory.hs
@@ -276,10 +276,11 @@ renameExportM d _k oldloc newloc = liftIO $ catchBoolIO $ do
exportPath :: FilePath -> ExportLocation -> FilePath
exportPath d loc = d </> fromExportLocation loc
-{- Removes the ExportLocation directory and its parents, so long as
+{- Removes the ExportLocation's parent directory and its parents, so long as
- they're empty, up to but not including the topdir. -}
removeExportLocation :: FilePath -> ExportLocation -> IO ()
-removeExportLocation topdir loc = go (Just $ fromExportLocation loc) (Right ())
+removeExportLocation topdir loc =
+ go (Just $ takeDirectory $ fromExportLocation loc) (Right ())
where
go _ (Left _e) = return ()
go Nothing _ = return ()