From 6925fd7a2338aeab33da540f0ed7843ea97deef4 Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Fri, 12 Sep 2014 10:50:24 +0530 Subject: [PATCH] Fix for regression in 2.3 connecting with Calibre Companion when deleting books caused by the performance improvement in 829447f01fd34dd780a7ee6083cdd53b751e5c40 --- src/calibre/devices/smart_device_app/driver.py | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/calibre/devices/smart_device_app/driver.py b/src/calibre/devices/smart_device_app/driver.py index fba450d714..b2ab262323 100644 --- a/src/calibre/devices/smart_device_app/driver.py +++ b/src/calibre/devices/smart_device_app/driver.py @@ -1272,7 +1272,7 @@ class SMART_DEVICE_APP(DeviceConfig, DevicePlugin): self._debug('processed cache. count=', len(books_on_device)) count_of_cache_items_deleted = 0 if self.client_cache_uses_lpaths: - for lpath in self.known_metadata.iterkeys(): + for lpath in tuple(self.known_metadata.iterkeys()): if lpath not in lpaths_on_device: try: uuid = self.known_metadata[lpath].get('uuid', None) @@ -1569,7 +1569,6 @@ class SMART_DEVICE_APP(DeviceConfig, DevicePlugin): traceback.print_exc() return None - @synchronous('sync_lock') def synchronize_with_db(self, db, id_, book): from calibre.utils.date import parse_date, is_date_undefined