Close .ghci files after reading them; fixes trac #4487
authorIan Lynagh <igloo@earth.li>
Sun, 5 Dec 2010 20:53:01 +0000 (20:53 +0000)
committerIan Lynagh <igloo@earth.li>
Sun, 5 Dec 2010 20:53:01 +0000 (20:53 +0000)
ghc/InteractiveUI.hs

index 552b61c..80ec79d 100644 (file)
@@ -404,8 +404,10 @@ runGHCi paths maybe_exprs = do
            -- NOTE: this assumes that runInputT won't affect the terminal;
            -- can we assume this will always be the case?
            -- This would be a good place for runFileInputT.
-           Right hdl -> runInputTWithPrefs defaultPrefs defaultSettings $ do
+           Right hdl ->
+               do runInputTWithPrefs defaultPrefs defaultSettings $
                             runCommands $ fileLoop hdl
+                  liftIO (hClose hdl `IO.catch` \_ -> return ())
      where
       getDirectory f = case takeDirectory f of "" -> "."; d -> d