Repository : ssh://darcs.haskell.org//srv/darcs/packages/unix On branch : encoding
http://hackage.haskell.org/trac/ghc/changeset/e6fe0c542c801ffd299ffa082ad7fe6a51313564 >--------------------------------------------------------------- commit e6fe0c542c801ffd299ffa082ad7fe6a51313564 Merge: 9bfa839... b7b180d... Author: Max Bolingbroke <[email protected]> Date: Fri May 13 16:05:17 2011 +0100 Merge branch 'master' of ssh://darcs.haskell.org/srv/darcs/packages/unix into encoding Conflicts: System/Posix/Directory.hsc System/Posix/Directory.hsc | 10 ++++++---- System/Posix/Error.hs | 7 ++++++- 2 files changed, 12 insertions(+), 5 deletions(-) diff --cc System/Posix/Directory.hsc index 97728db,cb357df..7f64e16 --- a/System/Posix/Directory.hsc +++ b/System/Posix/Directory.hsc @@@ -59,8 -45,10 +59,10 @@@ peekFilePath = peekCStrin -- @mode@. createDirectory :: FilePath -> FileMode -> IO () createDirectory name mode = - withCString name $ \s -> - throwErrnoPathIfMinus1Retry_ "createDirectory" name (c_mkdir s mode) + withFilePath name $ \s -> - throwErrnoPathIfMinus1_ "createDirectory" name (c_mkdir s mode) ++ throwErrnoPathIfMinus1Retry_ "createDirectory" name (c_mkdir s mode) + -- POSIX doesn't allow mkdir() to return EINTR, but it does on + -- OS X (#5184), so we need the Retry variant here. foreign import ccall unsafe "mkdir" c_mkdir :: CString -> CMode -> IO CInt @@@ -71,8 -59,8 +73,8 @@@ newtype DirStream = DirStream (Ptr CDir -- directory stream for @dir@. openDirStream :: FilePath -> IO DirStream openDirStream name = - withCString name $ \s -> do + withFilePath name $ \s -> do - dirp <- throwErrnoPathIfNull "openDirStream" name $ c_opendir s + dirp <- throwErrnoPathIfNullRetry "openDirStream" name $ c_opendir s return (DirStream dirp) foreign import ccall unsafe "__hsunix_opendir" _______________________________________________ Cvs-libraries mailing list [email protected] http://www.haskell.org/mailman/listinfo/cvs-libraries
