diff --git a/src/calibre/gui2/metadata/single.py b/src/calibre/gui2/metadata/single.py index b62aa28a68..d818f2db2a 100644 --- a/src/calibre/gui2/metadata/single.py +++ b/src/calibre/gui2/metadata/single.py @@ -388,6 +388,10 @@ class MetadataSingleDialogBase(ResizableDialog): def apply_changes(self): self.changed.add(self.book_id) + if self.db is None: + # break_cycles has already been called, don't know why this should + # happen but a user reported it + return True for widget in self.basic_metadata_widgets: try: if not widget.commit(self.db, self.book_id):