Fix Windows build.
authorAustin Seipp <austin@well-typed.com>
Wed, 2 Oct 2013 01:15:31 +0000 (20:15 -0500)
committerAustin Seipp <austin@well-typed.com>
Wed, 2 Oct 2013 01:15:31 +0000 (20:15 -0500)
In dfb52c3d the default language was set to Haskell2010 - by default,
GHC is less strict about the layout rule (controlled by
-XNonincreasingIndentation), but not when we explicitly set the language
to H2010. It turns out we relied on this behavior in the Windows build.

Thanks to Reid Barton for pointing this out.

Signed-off-by: Austin Seipp <austin@well-typed.com>
libraries/base/GHC/IO/FD.hs
libraries/base/System/IO.hs

index bcc8df9..2023526 100644 (file)
@@ -279,9 +279,9 @@ getUniqueFileInfo _ dev ino = return (fromIntegral dev, fromIntegral ino)
 #else
 getUniqueFileInfo fd _ _ = do
   with 0 $ \devptr -> do
-  with 0 $ \inoptr -> do
-  c_getUniqueFileInfo fd devptr inoptr
-  liftM2 (,) (peek devptr) (peek inoptr)
+    with 0 $ \inoptr -> do
+      c_getUniqueFileInfo fd devptr inoptr
+      liftM2 (,) (peek devptr) (peek inoptr)
 #endif
 
 #ifdef mingw32_HOST_OS
index 4b247f9..004ff54 100644 (file)
@@ -539,14 +539,14 @@ openNewFile filepath binary mode = do
         -- See bug #4968.
         _ | errno == eACCES -> do
           withCString filepath $ \path -> do
-          -- There is a race here: the directory might have been moved or
-          -- deleted between the c_open call and the next line, but there
-          -- doesn't seem to be any direct way to detect that the c_open call
-          -- failed because of an existing directory.
-          exists <- c_fileExists path
-          return $ if exists
-            then FileExists
-            else OpenNewError errno
+            -- There is a race here: the directory might have been moved or
+            -- deleted between the c_open call and the next line, but there
+            -- doesn't seem to be any direct way to detect that the c_open call
+            -- failed because of an existing directory.
+            exists <- c_fileExists path
+            return $ if exists
+              then FileExists
+              else OpenNewError errno
 #endif
         _ -> return (OpenNewError errno)
     else return (NewFileCreated fd)