From dec98d404e5d4be849d2327ae49a64413d4b7cf9 Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Thu, 17 May 2012 09:32:11 +0530 Subject: [PATCH] EPUB Output: Be a little more conservative when removing
tags. Only remove them if they have actual forms inside. (See 1000384) --- src/calibre/ebooks/conversion/plugins/epub_output.py | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/calibre/ebooks/conversion/plugins/epub_output.py b/src/calibre/ebooks/conversion/plugins/epub_output.py index 0da2868969..be5a1ab4a1 100644 --- a/src/calibre/ebooks/conversion/plugins/epub_output.py +++ b/src/calibre/ebooks/conversion/plugins/epub_output.py @@ -393,8 +393,14 @@ class EPUBOutput(OutputFormatPlugin): for tag in XPath('//h:body/descendant::h:script')(root): tag.getparent().remove(tag) + formchildren = XPath('./h:input|./h:button|./h:textarea|' + './h:label|./h:fieldset|./h:legend') for tag in XPath('//h:form')(root): - tag.getparent().remove(tag) + if formchildren(tag): + tag.getparent().remove(tag) + else: + # Not a real form + tag.tag = XHTML('div') for tag in XPath('//h:center')(root): tag.tag = XHTML('div')