mirror of
https://github.com/kovidgoyal/calibre.git
synced 2025-07-08 10:44:09 -04:00
OPF2: Speedup to_book_metadata() by avoiding deepcopying large non-metadata items
This commit is contained in:
parent
7792a0c3be
commit
a700b3f19c
@ -695,7 +695,13 @@ class OPF: # {{{
|
||||
if self.package_version >= 3.0:
|
||||
from calibre.ebooks.metadata.opf3 import read_metadata
|
||||
return read_metadata(self.root)
|
||||
ans = MetaInformation(self)
|
||||
# avoid deepcopy of non-metadata items
|
||||
manifest, spine, guide, toc = self.manifest, self.spine, self.guide, self.toc
|
||||
self.manifest = self.spine = self.guide = self.toc = None
|
||||
try:
|
||||
ans = MetaInformation(self)
|
||||
finally:
|
||||
self.manifest, self.spine, self.guide, self.toc = manifest, spine, guide, toc
|
||||
for n, v in self._user_metadata_.items():
|
||||
ans.set_user_metadata(n, v)
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user