diff options
Diffstat (limited to 'Command/Fsck.hs')
-rw-r--r-- | Command/Fsck.hs | 6 |
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 |