On 13/11/2011 19:41, Ganesh Sittampalam wrote:
Hi,
I'm not entirely clear on what the overall situation will be once Simon
M's patch to add .ByteString versions to unix is added in GHC 7.4.1.
In particular the original problem darcs ran into was with
getDirectoryContents in the directory package. That in turn uses the
unix package on Posix systems and another code path based on Win32 on
Windows
(http://hackage.haskell.org/packages/archive/directory/1.1.0.1/doc/html/src/System-Directory.html#getDirectoryContents)
So a couple of questions:
(1) Does Win32 need similar additions? I can't spot any substantial
changes to it for Max's PEP383, but I'm not sure if any lower-level
library changes might have affected it.
No - Win32 file paths cannot by definition contain invalid Unicode. The
existing Win32 library is fine.
(2) What's the recommended way of doing the equivalent of
getDirectoryContents for RawFilePath? Do we also need to add "raw"
versins to the directory package?
getDirectoryContents :: RawFilePath -> IO [RawFilePath]
getDirectoryContents path = do
bracket
(Posix.openDirStream path)
Posix.closeDirStream
loop
where
loop dirp = do
e <- Posix.readDirStream dirp
if B.null e then return [] else do
es <- loop dirp
return (e:es)
Cheers,
Simon
_______________________________________________
Glasgow-haskell-users mailing list
Glasgow-haskell-users@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-users