From 87657c6fd43af1f78a50d6c6a61d57c990e902c3 Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Mon, 12 Jan 2009 18:50:19 -0800 Subject: [PATCH] Fix #1606 (Accented o (with tilde) makes lrfviewer croak) --- src/calibre/ebooks/lrf/objects.py | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/calibre/ebooks/lrf/objects.py b/src/calibre/ebooks/lrf/objects.py index 23ee62c0b5..8a3c814141 100644 --- a/src/calibre/ebooks/lrf/objects.py +++ b/src/calibre/ebooks/lrf/objects.py @@ -698,9 +698,12 @@ class Text(LRFStream): lineposition_map = {1:'before', 2:'after'} def add_text(self, text): - s = unicode(text, "utf-16-le") + try: + s = unicode(text, "utf-16-le") + except UnicodeDecodeError: # Work around for Book Designer + s = unicode(text+'\x00', 'utf-16-le') if s: - s = s.translate(self.text_map) + s = s.translate(self.text_map) self.content.append(self.entity_pattern.sub(entity_to_unicode, s)) def end_container(self, tag, stream):