Use builtin ISO 8859-1 decoder in mkTextEncoding
authorHerbert Valerio Riedel <hvr@gnu.org>
Fri, 4 Dec 2015 11:15:23 +0000 (12:15 +0100)
committerHerbert Valerio Riedel <hvr@gnu.org>
Fri, 4 Dec 2015 11:15:23 +0000 (12:15 +0100)
We already do this for UTF8/16/32, so it seems obvious do the same
for the closely related popular ISO 8859-1 encoding, and avoid iconv
issues on some platforms (such as AIX which which bundles a broken
`libiconv` by default)

This fixes #11096

libraries/base/GHC/IO/Encoding.hs

index a690717..18b5432 100644 (file)
@@ -245,6 +245,8 @@ mkTextEncoding' cfm enc =
     "UTF32"   -> return $ UTF32.mkUTF32 cfm
     "UTF32LE" -> return $ UTF32.mkUTF32le cfm
     "UTF32BE" -> return $ UTF32.mkUTF32be cfm
+  -- ISO8859-1 we can handle ourselves as well
+    "ISO88591" -> return $ Latin1.mkLatin1 cfm
 #if defined(mingw32_HOST_OS)
     'C':'P':n | [(cp,"")] <- reads n -> return $ CodePage.mkCodePageEncoding cfm cp
     _ -> unknownEncodingErr (enc ++ codingFailureModeSuffix cfm)