Always use filesystem encoding for all file and handle reads and writes.
This is a big scary change. I have convinced myself it should be safe. I hope!
This commit is contained in:
parent
c89a9e6ca5
commit
8484c0c197
48 changed files with 75 additions and 109 deletions
|
@ -27,6 +27,7 @@ import Types.UrlContents
|
|||
import Annex.FileMatcher
|
||||
import Logs.Location
|
||||
import Utility.Metered
|
||||
import Utility.FileSystemEncoding
|
||||
import qualified Annex.Transfer as Transfer
|
||||
import Annex.Quvi
|
||||
import qualified Utility.Quvi as Quvi
|
||||
|
|
|
@ -156,7 +156,7 @@ downloadFeed url
|
|||
liftIO $ withTmpFile "feed" $ \f h -> do
|
||||
hClose h
|
||||
ifM (Url.download url f uo)
|
||||
( parseFeedString <$> readFileStrictAnyEncoding f
|
||||
( parseFeedString <$> readFileStrict f
|
||||
, return Nothing
|
||||
)
|
||||
|
||||
|
|
|
@ -161,7 +161,6 @@ performPairing remotename addrs = do
|
|||
getcode ourcode = do
|
||||
putStr "Enter the other repository's pairing code: "
|
||||
hFlush stdout
|
||||
fileEncoding stdin
|
||||
l <- getLine
|
||||
case Wormhole.toCode l of
|
||||
Just code
|
||||
|
@ -236,7 +235,7 @@ wormholePairing remotename ouraddrs ui = do
|
|||
then return ReceiveFailed
|
||||
else do
|
||||
r <- liftIO $ tryIO $
|
||||
readFileStrictAnyEncoding recvf
|
||||
readFileStrict recvf
|
||||
case r of
|
||||
Left _e -> return ReceiveFailed
|
||||
Right s -> maybe
|
||||
|
|
|
@ -56,10 +56,7 @@ runRequests
|
|||
-> (TransferRequest -> Annex Bool)
|
||||
-> Annex ()
|
||||
runRequests readh writeh a = do
|
||||
liftIO $ do
|
||||
hSetBuffering readh NoBuffering
|
||||
fileEncoding readh
|
||||
fileEncoding writeh
|
||||
liftIO $ hSetBuffering readh NoBuffering
|
||||
go =<< readrequests
|
||||
where
|
||||
go (d:rn:k:f:rest) = do
|
||||
|
|
|
@ -41,7 +41,7 @@ start = do
|
|||
createAnnexDirectory $ parentDir f
|
||||
cfg <- getCfg
|
||||
descs <- uuidDescriptions
|
||||
liftIO $ writeFileAnyEncoding f $ genCfg cfg descs
|
||||
liftIO $ writeFile f $ genCfg cfg descs
|
||||
vicfg cfg f
|
||||
stop
|
||||
|
||||
|
@ -51,11 +51,11 @@ vicfg curcfg f = do
|
|||
-- Allow EDITOR to be processed by the shell, so it can contain options.
|
||||
unlessM (liftIO $ boolSystem "sh" [Param "-c", Param $ unwords [vi, shellEscape f]]) $
|
||||
giveup $ vi ++ " exited nonzero; aborting"
|
||||
r <- parseCfg (defCfg curcfg) <$> liftIO (readFileStrictAnyEncoding f)
|
||||
r <- parseCfg (defCfg curcfg) <$> liftIO (readFileStrict f)
|
||||
liftIO $ nukeFile f
|
||||
case r of
|
||||
Left s -> do
|
||||
liftIO $ writeFileAnyEncoding f s
|
||||
liftIO $ writeFile f s
|
||||
vicfg curcfg f
|
||||
Right newcfg -> setCfg curcfg newcfg
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue