diff --git a/src/calibre/ebooks/oeb/transforms/guide.py b/src/calibre/ebooks/oeb/transforms/guide.py index 0764dd650a..3941904fdc 100644 --- a/src/calibre/ebooks/oeb/transforms/guide.py +++ b/src/calibre/ebooks/oeb/transforms/guide.py @@ -38,4 +38,3 @@ class Clean(object): 'title-page', 'copyright-page', 'start'): self.oeb.guide.remove(x) - diff --git a/src/calibre/ebooks/oeb/transforms/metadata.py b/src/calibre/ebooks/oeb/transforms/metadata.py index 0969509626..837769bc0d 100644 --- a/src/calibre/ebooks/oeb/transforms/metadata.py +++ b/src/calibre/ebooks/oeb/transforms/metadata.py @@ -94,12 +94,17 @@ class MergeMetadata(object): cdata = open(mi.cover, 'rb').read() elif mi.cover_data and mi.cover_data[-1]: cdata = mi.cover_data[1] - id = None - old_cover = self.oeb.guide.remove('cover') - self.oeb.guide.remove('titlepage') + id = old_cover = None + if 'cover' in self.oeb.guide: + old_cover = self.oeb.guide['cover'] + if cdata: + self.oeb.guide.remove('cover') + self.oeb.guide.remove('titlepage') if old_cover is not None: if old_cover.href in self.oeb.manifest.hrefs: item = self.oeb.manifest.hrefs[old_cover.href] + if not cdata: + return item.id self.oeb.manifest.remove(item) if cdata: id, href = self.oeb.manifest.generate('cover', 'cover.jpg')