git annex init works on Windows!
git hash-object and cat-file both only use \n at ends of line, even on Windows.
This commit is contained in:
parent
93e3c8a09a
commit
dc22549ab3
2 changed files with 14 additions and 5 deletions
|
@ -59,6 +59,9 @@ catObjectDetails h object = CoProcess.query h send receive
|
|||
hPutStrLn to $ show object
|
||||
receive from = do
|
||||
fileEncoding from
|
||||
#ifdef __WINDOWS__
|
||||
hSetNewlineMode from noNewlineTranslation
|
||||
#endif
|
||||
header <- hGetLine from
|
||||
case words header of
|
||||
[sha, objtype, size]
|
||||
|
@ -73,13 +76,10 @@ catObjectDetails h object = CoProcess.query h send receive
|
|||
| otherwise -> error $ "unknown response from git cat-file " ++ show (header, object)
|
||||
readcontent bytes from sha = do
|
||||
content <- S.hGet from bytes
|
||||
#ifdef __WINDOWS__
|
||||
eatchar '\r' from
|
||||
#endif
|
||||
eatchar '\n' from
|
||||
return $ Just (L.fromChunks [content], Ref sha)
|
||||
dne = return Nothing
|
||||
eatchar expected from = do
|
||||
c <- hGetChar from
|
||||
when (c /= expected) $
|
||||
error $ "missing " ++ (show c) ++ " from git cat-file"
|
||||
error $ "missing " ++ (show expected) ++ " from git cat-file"
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue