diff options
Diffstat (limited to 'Annex/Perms.hs')
-rw-r--r-- | Annex/Perms.hs | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/Annex/Perms.hs b/Annex/Perms.hs index 159cc328a..3905b7af9 100644 --- a/Annex/Perms.hs +++ b/Annex/Perms.hs @@ -92,8 +92,15 @@ freezeContentDir file = unlessM crippledFileSystem $ go _ = liftIO $ preventWrite dir thawContentDir :: FilePath -> Annex () -thawContentDir file = unlessM crippledFileSystem $ - liftIO $ allowWrite $ parentDir file +thawContentDir file = ifM crippledFileSystem + -- Probably cannot change mode on crippled filesystem, + -- but if file modes are supported, the directory may be frozen, + -- so try to thaw it. + ( void $ tryNonAsync go + , go + ) + where + go = liftIO $ allowWrite $ parentDir file {- Makes the directory tree to store an annexed file's content, - with appropriate permissions on each level. -} |