From dd15bf347ca04cb79d1e009a7afb0f4c082820ca Mon Sep 17 00:00:00 2001 From: Tor Andersson <tor.andersson@artifex.com> Date: Mon, 21 Nov 2016 14:26:41 +0100 Subject: Add toggle to enable/disable document styles. --- source/html/css-apply.c | 27 +++++++++++++++------------ source/html/html-layout.c | 6 ++++-- 2 files changed, 19 insertions(+), 14 deletions(-) (limited to 'source/html') diff --git a/source/html/css-apply.c b/source/html/css-apply.c index e5e4def4..f3e28ddd 100644 --- a/source/html/css-apply.c +++ b/source/html/css-apply.c @@ -644,22 +644,25 @@ fz_match_css(fz_context *ctx, fz_css_match *match, fz_css *css, fz_xml *node) } } - s = fz_xml_att(node, "style"); - if (s) + if (fz_use_document_css(ctx)) { - fz_try(ctx) + s = fz_xml_att(node, "style"); + if (s) { - prop = fz_parse_css_properties(ctx, css->pool, s); - while (prop) + fz_try(ctx) { - add_property(match, prop->name, prop->value, INLINE_SPECIFICITY); - prop = prop->next; + prop = fz_parse_css_properties(ctx, css->pool, s); + while (prop) + { + add_property(match, prop->name, prop->value, INLINE_SPECIFICITY); + prop = prop->next; + } + /* We can "leak" the property here, since it is freed along with the pool allocator. */ + } + fz_catch(ctx) + { + fz_warn(ctx, "ignoring style attribute"); } - /* We can "leak" the property here, since it is freed along with the pool allocator. */ - } - fz_catch(ctx) - { - fz_warn(ctx, "ignoring style attribute"); } } diff --git a/source/html/html-layout.c b/source/html/html-layout.c index 95f2a76b..b958a3a3 100644 --- a/source/html/html-layout.c +++ b/source/html/html-layout.c @@ -2545,14 +2545,16 @@ fz_parse_html(fz_context *ctx, fz_html_font_set *set, fz_archive *zip, const cha { g.is_fb2 = 1; fz_parse_css(ctx, g.css, fb2_default_css, "<default:fb2>"); - fb2_load_css(ctx, g.zip, g.base_uri, g.css, xml); + if (fz_use_document_css(ctx)) + fb2_load_css(ctx, g.zip, g.base_uri, g.css, xml); g.images = load_fb2_images(ctx, xml); } else { g.is_fb2 = 0; fz_parse_css(ctx, g.css, html_default_css, "<default:html>"); - html_load_css(ctx, g.zip, g.base_uri, g.css, xml); + if (fz_use_document_css(ctx)) + html_load_css(ctx, g.zip, g.base_uri, g.css, xml); g.images = NULL; } -- cgit v1.2.3