@@ -108,6 +108,7 @@ import Text.HTML.TagSoup (renderTagsOptions, RenderOptions(..), Tag(..),
108108import qualified Data.ByteString as BS
109109import qualified Data.ByteString.Char8 as B8
110110import Text.Pandoc.Compat.Monoid
111+import Data.ByteString.Base64 (decodeLenient)
111112
112113#ifdef EMBED_DATA_FILES
113114import Text.Pandoc.Data (dataFiles)
@@ -641,7 +642,7 @@ openURL u
641642 | "data:" `isPrefixOf` u =
642643 let mime = takeWhile (/=',') $ drop 5 u
643644 contents = B8.pack $ unEscapeString $ drop 1 $ dropWhile (/=',') u
644− in return $ Right (contents, Just mime)
645+ in return $ Right (decodeLenient contents, Just mime)
645646#ifdef HTTP_CONDUIT
646647 | otherwise = E.try $ do
647648 req <- parseUrl u