From 5dbea7b9091ed795d367862c5aba4236cd1b79f5 Mon Sep 17 00:00:00 2001 From: Kazu Yamamoto Date: Thu, 27 Mar 2014 16:40:34 +0900 Subject: [PATCH] error handling for doc. --- Language/Haskell/GhcMod/PkgDoc.hs | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/Language/Haskell/GhcMod/PkgDoc.hs b/Language/Haskell/GhcMod/PkgDoc.hs index a9ee2eb..eb58a1c 100644 --- a/Language/Haskell/GhcMod/PkgDoc.hs +++ b/Language/Haskell/GhcMod/PkgDoc.hs @@ -14,9 +14,12 @@ packageDoc _ cradle mdl = pkgDoc cradle mdl pkgDoc :: Cradle -> String -> IO String pkgDoc cradle mdl = do pkg <- trim <$> readProcess "ghc-pkg" toModuleOpts [] - htmlpath <- readProcess "ghc-pkg" ["field", pkg, "haddock-html"] [] - let ret = pkg ++ " " ++ drop 14 htmlpath - return ret + if pkg == "" then + return "\n" + else do + htmlpath <- readProcess "ghc-pkg" ["field", pkg, "haddock-html"] [] + let ret = pkg ++ " " ++ drop 14 htmlpath + return ret where toModuleOpts = ["find-module", "--simple-output"] ++ cradlePackageDbOpts cradle ++ [mdl] trim = takeWhile (/= '\n')