aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJohn MacFarlane <jgm@berkeley.edu>2016-11-18 11:25:13 +0100
committerJohn MacFarlane <jgm@berkeley.edu>2016-11-18 11:25:13 +0100
commit20b2269fb7d0ccc06622637a713e469265c88eea (patch)
tree004a53982825dd9835480eed0f34ba484a12d1e6
parent99287f4754e75cbe62fed1f5d02fbed7c688cb7a (diff)
downloadpandoc-20b2269fb7d0ccc06622637a713e469265c88eea.tar.gz
In --version, trap error in getAppUserDataDirectory.
This fixes a crash with `pandoc --version` on unusual systems with no real user (e.g. SQL Server 2016). Closes #3241.
-rw-r--r--pandoc.hs5
1 files changed, 4 insertions, 1 deletions
diff --git a/pandoc.hs b/pandoc.hs
index 3394c79dd..80128586a 100644
--- a/pandoc.hs
+++ b/pandoc.hs
@@ -975,7 +975,10 @@ options =
(NoArg
(\_ -> do
prg <- getProgName
- defaultDatadir <- getAppUserDataDirectory "pandoc"
+ defaultDatadir <- E.catch
+ (getAppUserDataDirectory "pandoc")
+ (\e -> let _ = (e :: E.SomeException)
+ in return "")
UTF8.hPutStrLn stdout (prg ++ " " ++ pandocVersion ++
compileInfo ++ "\nDefault user data directory: " ++
defaultDatadir ++ copyrightMessage)