From c0deb561e780a252a3335605880c1675e93ab789 Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Thu, 7 Nov 2013 17:48:04 +0530 Subject: [PATCH] Clear parse worker cache when new book is opened --- src/calibre/gui2/tweak_book/boss.py | 1 + src/calibre/gui2/tweak_book/preview.py | 3 +++ 2 files changed, 4 insertions(+) diff --git a/src/calibre/gui2/tweak_book/boss.py b/src/calibre/gui2/tweak_book/boss.py index 7269f3934e..b54a86f8be 100644 --- a/src/calibre/gui2/tweak_book/boss.py +++ b/src/calibre/gui2/tweak_book/boss.py @@ -97,6 +97,7 @@ class Boss(QObject): return error_dialog(self.gui, _('Failed to open book'), _('Failed to open book, click Show details for more information.'), det_msg=job.traceback, show=True) + parse_worker.clear() container = job.result set_current_container(container) self.current_metadata = self.gui.current_metadata = container.mi diff --git a/src/calibre/gui2/tweak_book/preview.py b/src/calibre/gui2/tweak_book/preview.py index 59efe2fc70..04c81bc9e8 100644 --- a/src/calibre/gui2/tweak_book/preview.py +++ b/src/calibre/gui2/tweak_book/preview.py @@ -117,6 +117,9 @@ class ParseWorker(Thread): def get_data(self, name): return getattr(self.parse_items.get(name, None), 'parsed_data', None) + def clear(self): + self.parse_items.clear() + parse_worker = ParseWorker() # }}}