From 56d0aaadd3b34b3f56371d2a5a8dbbf5b4e20358 Mon Sep 17 00:00:00 2001 From: John MacFarlane Date: Wed, 22 Feb 2023 14:21:32 -0800 Subject: Trap error in getAppUserDataDirectory. This can raise an error if pandoc is run in a non-user environment. Closes #8648. --- src/Text/Pandoc/Data.hs | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'src/Text') diff --git a/src/Text/Pandoc/Data.hs b/src/Text/Pandoc/Data.hs index 8b4ca3f10..f1cf0521c 100644 --- a/src/Text/Pandoc/Data.hs +++ b/src/Text/Pandoc/Data.hs @@ -239,8 +239,9 @@ defaultUserDataDir :: IO FilePath defaultUserDataDir = do xdgDir <- E.catch (getXdgDirectory XdgData "pandoc") (\(_ :: E.SomeException) -> return mempty) - legacyDir <- getAppUserDataDirectory "pandoc" xdgExists <- doesDirectoryExist xdgDir + legacyDir <- E.catch (getAppUserDataDirectory "pandoc") + (\(_ :: E.SomeException) -> return mempty) legacyDirExists <- doesDirectoryExist legacyDir if not xdgExists && legacyDirExists then return legacyDir -- cgit v1.2.3