[Pkg-haskell-commits] [SCM] haskell-testpack branch, master, updated. debian/1.0.2-1-4-gb0d6b36

John Goerzen jgoerzen at complete.org
Fri Apr 23 14:59:49 UTC 2010


The following commit has been merged in the master branch:
commit 9135b7b06c9e16eaf46ecd39b63d3f1e54045155
Author: John Goerzen <jgoerzen at complete.org>
Date:   Fri Jul 22 00:38:22 2005 +0100

    checkpointing

diff --git a/MissingH/IO/HVFS.hs b/MissingH/IO/HVFS.hs
index 11d8baf..a58ac11 100644
--- a/MissingH/IO/HVFS.hs
+++ b/MissingH/IO/HVFS.hs
@@ -258,7 +258,6 @@ class HVFS a => HVFSOpenable a where
            withOpen oe (\fh -> do vPutStr fh s
                                   vClose fh)
 
-#ifndef mingw32_HOST_OS
 instance Show FileStatus where
     show _ = "<FileStatus>"
 
@@ -284,7 +283,6 @@ instance HVFSStat FileStatus where
     vIsDirectory = isDirectory
     vIsSymbolicLink = isSymbolicLink
     vIsSocket = isSocket
-#endif
 
 data SystemFS = SystemFS
               deriving (Eq, Show)
diff --git a/MissingH/IO/WindowsCompat.hs b/MissingH/IO/WindowsCompat.hs
index d0798f5..fc5c356 100644
--- a/MissingH/IO/WindowsCompat.hs
+++ b/MissingH/IO/WindowsCompat.hs
@@ -30,6 +30,8 @@ Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
 Provides some types and related items on Windows to be compatible with
 the System.Posix.* libraries
 
+See also "MissingH.IO.StatCompat", which this module re-exports.
+
 Copyright (c) 2005 John Goerzen, jgoerzen\@complete.org
 
 -}
@@ -39,48 +41,47 @@ where
 
 import System.Posix.Types
 import Data.Bits
+import MissingH.IO.StatCompat
+import MissingH.Time
 
 #ifdef mingw32_HOST_OS
 -- these types aren't defined here
-type LinkCount = Int
-type UserID = Int
-type GroupID = Int
 
 nullFileMode :: FileMode
 nullFileMode = 0
 
 ownerReadMode :: FileMode
-ownerReadMode = 00400
+ownerReadMode = 0o00400
 
 ownerWriteMode :: FileMode
-ownerWriteMode = 00200
+ownerWriteMode = 0o00200
 
 ownerExecuteMode :: FileMode
-ownerExecuteMode = 00100
+ownerExecuteMode = 0o00100
 
 groupReadMode :: FileMode
-groupReadMode = 00040
+groupReadMode = 0o00040
 
 groupWriteMode :: FileMode
-groupWriteMode = 00020
+groupWriteMode = 0o00020
 
 groupExecuteMode :: FileMode
-groupExecuteMode = 00010
+groupExecuteMode = 0o00010
 
 otherReadMode :: FileMode
-otherReadMode = 00004
+otherReadMode = 0o00004
 
 otherWriteMode :: FileMode
-otherWriteMode = 00002
+otherWriteMode = 0o00002
 
 otherExecuteMode :: FileMode
-otherExecuteMode = 00001
+otherExecuteMode = 0o00001
 
 setUserIDMode :: FileMode
-setUserIDMode = 0004000
+setUserIDMode = 0o0004000
 
 setGroupIDMode :: FileMode
-setGroupIDMode = 0002000
+setGroupIDMode = 0o0002000
 
 stdFileMode :: FileMode
 stdFileMode = ownerReadMode  .|. ownerWriteMode .|.
@@ -88,19 +89,27 @@ stdFileMode = ownerReadMode  .|. ownerWriteMode .|.
               otherReadMode  .|. otherWriteMode
 
 ownerModes :: FileMode
-ownerModes = 00700
+ownerModes = 0o00700
 
 groupModes :: FileMode
-groupModes = 00070
+groupModes = 0o00070
 
 otherModes :: FileMode
-otherModes = 00007
+otherModes = 0o00007
 
 accessModes :: FileMode
 accessModes = ownerModes .|. groupModes .|. otherModes
 
-intersectFileModes :: FileMode -> FileMode -> FileMode
-intersectFileModes m1 m2 = m1 .&. m2
+----------- stat
+type FileStatus = FileStatusCompat
+getFileStatus :: FilePath -> IO FileStatus
+getFileStatus fp =
+    do isfile <- doesFileExist fp
+       isdir <- doesDirectoryExist
+       perms <- getPermissions fp
+       modct <- getModificationTime fp
+       return $ FileStatusCompat {deviceID = -1,
+                                  fileID = -1,
+                                  fileMode = 
 
 #endif
-

-- 
haskell-testpack



More information about the Pkg-haskell-commits mailing list