@@ -40,6 +40,7 @@ import Text.Pandoc.Slides
40import Text.Pandoc.Highlighting ( highlight, styleToCss,
40import Text.Pandoc.Highlighting ( highlight, styleToCss,
41 formatHtmlInline, formatHtmlBlock )
41 formatHtmlInline, formatHtmlBlock )
42import Text.Pandoc.XML (fromEntities, escapeStringForXML)
42import Text.Pandoc.XML (fromEntities, escapeStringForXML)
43+import Network.URI ( parseURIReference, URI(..) )
43import Network.HTTP ( urlEncode )
44import Network.HTTP ( urlEncode )
44import Numeric ( showHex )
45import Numeric ( showHex )
45import Data.Char ( ord, toLower )
46import Data.Char ( ord, toLower )
@@ -396,7 +397,10 @@ imageExts = [ "art", "bmp", "cdr", "cdt", "cpt", "cr2", "crw", "djvu", "erf",
397treatAsImage :: FilePath -> Bool
398treatAsImage :: FilePath -> Bool
398treatAsImage fp =
399treatAsImage fp =
400+ let path = case uriPath `fmap` parseURIReference fp of
399− let ext = map toLower $ drop 1 $ takeExtension fp
403+ ext = map toLower $ drop 1 $ takeExtension path
400 in null ext || ext `elem` imageExts
404 in null ext || ext `elem` imageExts
402-- | Convert Pandoc block element to HTML.
406-- | Convert Pandoc block element to HTML.