From 089925ab1daaa4c44dad33b9e242bf75f22de8c9 Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Thu, 17 Sep 2009 10:14:49 -0600 Subject: [PATCH] Fix #3327 (Converting EBUB to MOBI) --- src/calibre/ebooks/oeb/base.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/calibre/ebooks/oeb/base.py b/src/calibre/ebooks/oeb/base.py index 5516e78663..c988688e22 100644 --- a/src/calibre/ebooks/oeb/base.py +++ b/src/calibre/ebooks/oeb/base.py @@ -759,13 +759,15 @@ class Manifest(object): % (self.id, self.href, self.media_type) def _parse_xml(self, data): + parser = etree.XMLParser(recover=True) try: - return etree.fromstring(data) + return etree.fromstring(data, parser=parser) except etree.XMLSyntaxError, err: if getattr(err, 'code', 0) == 26 or str(err).startswith('Entity'): data = xml_to_unicode(data, strip_encoding_pats=True, resolve_entities=True)[0] return etree.fromstring(data) + raise def _parse_xhtml(self, data): self.oeb.log.debug('Parsing', self.href, '...')