decorate openTempFile errors with the template name

This is to track down what file in .git/annex/ is being written to via a
temp file when the repository is read-only.

Sponsored-by: Dartmouth College's Datalad project
This commit is contained in:
Joey Hess 2021-08-30 13:05:02 -04:00
parent 837116ef1e
commit e853ef3095
No known key found for this signature in database
GPG key ID: DB12DB0FF05F8F38
5 changed files with 32 additions and 9 deletions

View file

@ -33,6 +33,7 @@ import Utility.Hash
import Utility.FileSystemEncoding
import Utility.Env
import Utility.Env.Set
import Utility.Tmp
import qualified Utility.LockFile.Posix as Posix
import System.IO
@ -143,7 +144,7 @@ tryLock lockfile = do
where
go abslockfile sidelock = do
let abslockfile' = fromRawFilePath abslockfile
(tmp, h) <- openTempFile (takeDirectory abslockfile') "locktmp"
(tmp, h) <- openTmpFileIn (takeDirectory abslockfile') "locktmp"
let tmp' = toRawFilePath tmp
setFileMode tmp' (combineModes readModes)
hPutStr h . show =<< mkPidLock