summaryrefslogtreecommitdiff
path: root/Command/Fsck.hs
diff options
context:
space:
mode:
Diffstat (limited to 'Command/Fsck.hs')
-rw-r--r--Command/Fsck.hs6
1 files changed, 4 insertions, 2 deletions
diff --git a/Command/Fsck.hs b/Command/Fsck.hs
index 81618600f..0136175c7 100644
--- a/Command/Fsck.hs
+++ b/Command/Fsck.hs
@@ -223,10 +223,12 @@ verifyLocationLog key keystatus desc = do
{- Since we're checking that a key's object file is present, throw
- in a permission fixup here too. -}
- when (present && not direct) $ void $ tryIO $
- if isKeyUnlocked keystatus
+ when (present && not direct) $ do
+ void $ tryIO $ if isKeyUnlocked keystatus
then thawContent obj
else freezeContent obj
+ unlessM (isContentWritePermOk obj) $
+ warning $ "** Unable to set correct write mode for " ++ obj ++ " ; perhaps you don't own that file"
whenM (liftIO $ doesDirectoryExist $ parentDir obj) $
freezeContentDir obj