Commit 5155d694 authored by simonmar's avatar simonmar

[project @ 2005-01-14 11:46:24 by simonmar]

hGetStringBuffer: hClose the file after we've read it (duh).  This
causes a real problem on Windows, where the file remains locked in
GHCi, and cannot be modified until after the finalizer has closed it
(bug #1047408).
parent 20b21f5b
......@@ -49,7 +49,8 @@ import GHC.IOBase
import GHC.IO ( slurpFile )
#endif
import IO ( openFile, hFileSize, IOMode(ReadMode) )
import IO ( openFile, hFileSize, IOMode(ReadMode),
hClose )
#if __GLASGOW_HASKELL__ >= 601
import System.IO ( openBinaryFile )
#else
......@@ -103,6 +104,7 @@ hGetStringBuffer fname = do
arr <- newArray_ (0,size_i-1)
r <- if size_i == 0 then return 0 else hGetArray h arr size_i
#endif
hClose h
if (r /= size_i)
then ioError (userError "short read of file")
else do
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment