From 0632a064cf0f877103470150d2cc54fa011b523d Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Tue, 8 Mar 2016 22:33:55 +0530 Subject: [PATCH] DRYer --- src/calibre/ebooks/oeb/normalize_css.py | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/src/calibre/ebooks/oeb/normalize_css.py b/src/calibre/ebooks/oeb/normalize_css.py index 32bb81f236..4249265a36 100644 --- a/src/calibre/ebooks/oeb/normalize_css.py +++ b/src/calibre/ebooks/oeb/normalize_css.py @@ -191,10 +191,17 @@ SHORTHAND_DEFAULTS = { 'list-style': 'inherit', 'font': 'inherit', } +_safe_parser = None +def safe_parser(): + global _safe_parser + if _safe_parser is None: + import logging + _safe_parser = CSSParser(loglevel=logging.CRITICAL, validate=False) + return _safe_parser + def normalize_filter_css(props): - import logging ans = set() - p = CSSParser(loglevel=logging.CRITICAL, validate=False) + p = safe_parser() for prop in props: n = normalizers.get(prop, None) ans.add(prop)