diff --git a/src/calibre/gui2/custom_column_widgets.py b/src/calibre/gui2/custom_column_widgets.py index f6ed1e4d6f..f364638f37 100644 --- a/src/calibre/gui2/custom_column_widgets.py +++ b/src/calibre/gui2/custom_column_widgets.py @@ -41,7 +41,8 @@ class Base(object): val = self.gui_val val = self.normalize_ui_val(val) if val != self.initial_val: - self.db._set_custom(book_id, val, num=self.col_id, notify=notify) + self.db.set_custom(book_id, val, num=self.col_id, notify=notify, + commit=False) def normalize_db_val(self, val): return val @@ -304,8 +305,8 @@ class Series(Base): num=self.col_id) else: s_index = None - self.db._set_custom(book_id, val, extra=s_index, - num=self.col_id, notify=notify) + self.db.set_custom(book_id, val, extra=s_index, + num=self.col_id, notify=notify, commit=False) widgets = { 'bool' : Bool, diff --git a/src/calibre/library/custom_columns.py b/src/calibre/library/custom_columns.py index 60be09a193..4ba664dadc 100644 --- a/src/calibre/library/custom_columns.py +++ b/src/calibre/library/custom_columns.py @@ -412,10 +412,11 @@ class CustomColumns(object): self.conn.commit() def set_custom(self, id, val, label=None, num=None, - append=False, notify=True, extra=None): + append=False, notify=True, extra=None, commit=True): self._set_custom(id, val, label=label, num=num, append=append, notify=notify, extra=extra) - self.conn.commit() + if commit: + self.conn.commit() def _set_custom(self, id_, val, label=None, num=None, append=False, notify=True, extra=None):