diff options
| author | Joey Hess <joeyh@joeyh.name> | 2016-05-22 15:41:28 -0400 |
|---|---|---|
| committer | Joey Hess <joeyh@joeyh.name> | 2016-05-22 15:41:28 -0400 |
| commit | 14e5429163f0138f03deaaa1134c8b4982c27141 (patch) | |
| tree | 37f8b19e1ee75754e38ebb681af8ddb30f03500d /src/Utility/FileSystemEncoding.hs | |
| parent | af00ff05913441cd4860c66aaf1d7a20a55b6d76 (diff) | |
merge Utility from git-annex
Diffstat (limited to 'src/Utility/FileSystemEncoding.hs')
| -rw-r--r-- | src/Utility/FileSystemEncoding.hs | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/Utility/FileSystemEncoding.hs b/src/Utility/FileSystemEncoding.hs index 67341d37..eab98337 100644 --- a/src/Utility/FileSystemEncoding.hs +++ b/src/Utility/FileSystemEncoding.hs @@ -19,6 +19,7 @@ module Utility.FileSystemEncoding ( encodeW8NUL, decodeW8NUL, truncateFilePath, + setConsoleEncoding, ) where import qualified GHC.Foreign as GHC @@ -164,3 +165,10 @@ truncateFilePath n = reverse . go [] n . L8.fromString else go (c:coll) (cnt - x') (L8.drop 1 bs) _ -> coll #endif + +{- This avoids ghc's output layer crashing on invalid encoded characters in + - filenames when printing them out. -} +setConsoleEncoding :: IO () +setConsoleEncoding = do + fileEncoding stdout + fileEncoding stderr |
