diff --git a/src/calibre/ebooks/metadata/epub.py b/src/calibre/ebooks/metadata/epub.py index e60837a553..e1712f3668 100644 --- a/src/calibre/ebooks/metadata/epub.py +++ b/src/calibre/ebooks/metadata/epub.py @@ -109,9 +109,11 @@ class OCFZipReader(OCFReader): raise EPubException("not a ZIP .epub OCF container") self.root = root if self.root is None: - self.root = os.getcwdu() - if hasattr(stream, 'name'): - self.root = os.path.abspath(os.path.dirname(stream.name)) + name = getattr(stream, 'name', False) + if name: + self.root = os.path.abspath(os.path.dirname(name)) + else: + self.root = os.getcwdu() super(OCFZipReader, self).__init__() def open(self, name, mode='r'):