From b27c880be60acac71b2dfa8cf3ac1785be4640cc Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Tue, 1 Dec 2009 18:09:50 +0000 Subject: [PATCH] FB2 Input: Workaround for unquoted ampersands --- src/calibre/ebooks/fb2/input.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/calibre/ebooks/fb2/input.py b/src/calibre/ebooks/fb2/input.py index 695d617398..248f9bd524 100644 --- a/src/calibre/ebooks/fb2/input.py +++ b/src/calibre/ebooks/fb2/input.py @@ -43,7 +43,11 @@ class FB2Input(InputFormatPlugin): from calibre.ebooks.oeb.base import XLINK_NS NAMESPACES = {'f':FB2NS, 'l':XLINK_NS} log.debug('Parsing XML...') - doc = etree.fromstring(stream.read()) + raw = stream.read() + try: + doc = etree.fromstring(raw) + except etree.XMLSyntaxError: + doc = etree.fromstring(raw.replace('& ', '&')) self.extract_embedded_content(doc) log.debug('Converting XML to HTML...') ss = open(P('templates/fb2.xsl'), 'rb').read()