From 0096c8eae2eebb785020dc63ff48d382ff520db9 Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Thu, 22 Jan 2015 22:12:32 +0530 Subject: [PATCH] Fix handling of @import rules in the report --- src/calibre/ebooks/oeb/polish/report.py | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/src/calibre/ebooks/oeb/polish/report.py b/src/calibre/ebooks/oeb/polish/report.py index b0bbcf0791..9bb1fe78a1 100644 --- a/src/calibre/ebooks/oeb/polish/report.py +++ b/src/calibre/ebooks/oeb/polish/report.py @@ -167,10 +167,11 @@ def css_data(container, book_locale): for rule in sheet: if isinstance(rule, CSSRule): yield rule - sheet = importable_sheets.get(rule) - if sheet is not None: - for rule in rules_in_sheet(sheet): - yield rule + else: # @import rule + isheet = importable_sheets.get(rule) + if isheet is not None: + for irule in rules_in_sheet(isheet): + yield irule def sheets_for_html(name, root): for href in link_path(root): @@ -212,7 +213,7 @@ def css_data(container, book_locale): for name, inline_sheets in html_sheets.iteritems(): root = container.parsed(name) for sheet in list(sheets_for_html(name, root)) + inline_sheets: - for rule in sheet: + for rule in rules_in_sheet(sheet): rule_map[rule][name].extend(matches_for_selector(rule.selector, root)) ans = []