#4199: createDirectoryIfMissing fails if directory exists on 32-bit windows
-------------------------+--------------------------------------------------
    Reporter:  creswick  |       Owner:                     
        Type:  bug       |      Status:  new                
    Priority:  normal    |   Component:  libraries/directory
     Version:  6.12.1    |    Keywords:                     
          Os:  Windows   |    Testcase:                     
Architecture:  x86       |     Failure:  Runtime crash      
-------------------------+--------------------------------------------------
 createDirectoryIfMissing generates an exception when running on 32-bit
 windows.

 {{{
 $ ./dirbug.exe "c:\\cygwin\\home\\hudson\\tmp\\dirBug\\foo"
 dirbug.exe: CreateDirectory: invalid argument (Cannot create a file when
 that file already exists.)
 }}}

 I've verified this behavior with 32-bit vista with c and asm backends
 using ghc 6.12.1 and 6.10.4.

 {{{
 import System.Directory ( createDirectoryIfMissing )

 --
 --  6.12.1 fails with:
 --   $ ghc -fvia-c
 --   $ ghc -fasm
 --
 -- 6.10.4 fails with:
 --   $ ghc -fasm
 --   $ ghc -fvia-c

 main :: IO ()
 main = do
   createDirectoryIfMissing True "foo"
   createDirectoryIfMissing True "foo"
 }}}

 This does *not* throw an exception on 64-bit vista, and this also does not
 throw an exception when running interpreted (either ghci or runhaskell).

-- 
Ticket URL: <http://hackage.haskell.org/trac/ghc/ticket/4199>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
_______________________________________________
Glasgow-haskell-bugs mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs

Reply via email to