diff options
author | Joey Hess <joeyh@joeyh.name> | 2017-02-13 17:30:28 -0400 |
---|---|---|
committer | Joey Hess <joeyh@joeyh.name> | 2017-02-13 17:39:16 -0400 |
commit | ab15aba7e4eb7fcc6d1e1423622a0e1bc04c567e (patch) | |
tree | 859c5098a50217580cb803dd99e166ad76b9e814 /Database/Keys.hs | |
parent | 6e5180c8d52cabffff00fda0682b6cb280e95b36 (diff) |
Work around sqlite's incorrect handling of umask when creating databases.
Refactored some common code into initDb.
This only deals with the problem when creating new databases. If a repo
got bad permissions into it, it's up to the user to deal with it.
This commit was sponsored by Ole-Morten Duesund on Patreon.
Diffstat (limited to 'Database/Keys.hs')
-rw-r--r-- | Database/Keys.hs | 8 |
1 files changed, 2 insertions, 6 deletions
diff --git a/Database/Keys.hs b/Database/Keys.hs index 0f2f34930..b9440ac1a 100644 --- a/Database/Keys.hs +++ b/Database/Keys.hs @@ -25,11 +25,11 @@ import qualified Database.Keys.SQL as SQL import Database.Types import Database.Keys.Handle import qualified Database.Queue as H +import Database.Init import Annex.Locations import Annex.Common hiding (delete) import Annex.Version (versionUsesKeysDatabase) import qualified Annex -import Annex.Perms import Annex.LockFile import Utility.InodeCache import Annex.InodeSentinal @@ -120,11 +120,7 @@ openDb createdb _ = catchPermissionDenied permerr $ withExclusiveLock gitAnnexKe case (dbexists, createdb) of (True, _) -> open db (False, True) -> do - liftIO $ do - createDirectoryIfMissing True dbdir - H.initDb db SQL.createTables - setAnnexDirPerm dbdir - setAnnexFilePerm db + initDb db SQL.createTables open db (False, False) -> return DbUnavailable where |