Skip to content

Commit

Permalink
try the html parser for dom filters if xml parser fails
Browse files Browse the repository at this point in the history
  • Loading branch information
michal-h21 committed Aug 21, 2024
1 parent a1dffde commit 80afd7b
Show file tree
Hide file tree
Showing 2 changed files with 15 additions and 2 deletions.
4 changes: 4 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,9 @@
# Changelog

- 2024/08/21

- try the HTML parser for DOM filters if XML parser fails.

- 2024/06/18

- changed default scaling in `dvisvgm_hashes` to 1.4.
Expand Down
13 changes: 11 additions & 2 deletions filters/make4ht-domfilter.lua
Original file line number Diff line number Diff line change
Expand Up @@ -46,9 +46,18 @@ local function filter(filters, name)
return dom.parse(input, void_elements)
end)
if not status then
log:warning("DOM parsing of " .. filename .. " failed:")
log:warning("XML DOM parsing of " .. filename .. " failed:")
log:warning(domobject)
return nil, "DOM parsing failed"
log:debug("Trying HTML DOM parsing")
status, domobject = pcall(function()
return dom.html_parse(input)
end)
if not status then
log:warning("HTML DOM parsing failed as well")
return nil, "DOM parsing failed"
else
log:warning("HTML DOM parsing OK, DOM filters will be executed")
end
end
for _,f in pairs(sequence) do
domobject = f(domobject,parameters)
Expand Down

0 comments on commit 80afd7b

Please sign in to comment.