From d297cfc0ca26fa68ec38756c0751a589c97e0206 Mon Sep 17 00:00:00 2001 From: Simon Marlow Date: Tue, 4 Dec 2007 11:39:45 +0000 Subject: [PATCH] :cd with no argument goes to the user's home directory Seems better than getting a confusing 'cannot find directory' exception. --- compiler/ghci/InteractiveUI.hs | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/compiler/ghci/InteractiveUI.hs b/compiler/ghci/InteractiveUI.hs index 3ae37f5..8cc1513 100644 --- a/compiler/ghci/InteractiveUI.hs +++ b/compiler/ghci/InteractiveUI.hs @@ -846,6 +846,12 @@ addModule files = do afterLoad ok session False prev_context changeDirectory :: String -> GHCi () +changeDirectory "" = do + -- :cd on its own changes to the user's home directory + either_dir <- io (IO.try getHomeDirectory) + case either_dir of + Left _e -> return () + Right dir -> changeDirectory dir changeDirectory dir = do session <- getSession graph <- io (GHC.getModuleGraph session) -- 1.7.10.4