From 6febcf355805de34d18dedeebcc8c5fe54cdb3d0 Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Thu, 22 Apr 2010 03:37:26 -0600 Subject: [PATCH] MOBI Input: Fix regression that broke detection of covers in MOBI files when converting --- src/calibre/ebooks/mobi/reader.py | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/src/calibre/ebooks/mobi/reader.py b/src/calibre/ebooks/mobi/reader.py index 84e6208086..f4161d43de 100644 --- a/src/calibre/ebooks/mobi/reader.py +++ b/src/calibre/ebooks/mobi/reader.py @@ -619,6 +619,7 @@ class MobiReader(object): opf.cover = None cover = opf.cover + cover_copied = None if cover is not None: cover = cover.replace('/', os.sep) if os.path.exists(cover): @@ -626,13 +627,19 @@ class MobiReader(object): if os.path.exists(ncover): os.remove(ncover) shutil.copyfile(cover, ncover) + cover_copied = os.path.abspath(ncover) opf.cover = ncover.replace(os.sep, '/') manifest = [(htmlfile, 'application/xhtml+xml'), (os.path.abspath('styles.css'), 'text/css')] bp = os.path.dirname(htmlfile) + added = set([]) for i in getattr(self, 'image_names', []): - manifest.append((os.path.join(bp, 'images/', i), 'image/jpeg')) + path = os.path.join(bp, 'images', i) + added.add(path) + manifest.append((path, 'image/jpeg')) + if cover_copied is not None: + manifest.append((cover_copied, 'image/jpeg')) opf.create_manifest(manifest) opf.create_spine([os.path.basename(htmlfile)])