From d5219ac29645b734f7e8f6cfeeded71f6d4de775 Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Sat, 9 Feb 2008 18:03:43 +0000 Subject: [PATCH] Workaround for broken BAEN OPF files --- src/libprs500/ebooks/metadata/opf.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/libprs500/ebooks/metadata/opf.py b/src/libprs500/ebooks/metadata/opf.py index f0aee09c38..977f8ccf8a 100644 --- a/src/libprs500/ebooks/metadata/opf.py +++ b/src/libprs500/ebooks/metadata/opf.py @@ -31,6 +31,10 @@ class ManifestItem(object): if not os.path.isabs(self.href): self.href = os.path.join(cwd, self.href) self.href = os.path.normpath(self.href) + if not os.path.exists(self.href): # Bug in Baen OPF files + nhref = os.path.join(os.path.dirname(self.href), os.path.basename(self.href).replace('__p_.htm', '__c_.htm')) + if os.path.exists(nhref): + self.href = nhref self.media_type = item['media-type'] if item.has_key('media-type') else '' def __unicode__(self):