diff --git a/src/calibre/gui2/actions/choose_library.py b/src/calibre/gui2/actions/choose_library.py index 3937975e76..19b343599c 100644 --- a/src/calibre/gui2/actions/choose_library.py +++ b/src/calibre/gui2/actions/choose_library.py @@ -493,16 +493,16 @@ class ChooseLibraryAction(InterfaceAction): m.stop_metadata_backup() db = m.db db.prefs.disable_setting = True + library_path = db.library_path d = DBCheck(self.gui, db) d.start() try: - d.conn.close() + m.close() except: pass d.break_cycles() - self.gui.library_moved(db.library_path, call_close=not - d.closed_orig_conn) + self.gui.library_moved(library_path, call_close=False) if d.rejected: return if d.error is None: diff --git a/src/calibre/gui2/dialogs/check_library.py b/src/calibre/gui2/dialogs/check_library.py index 5e6c4999ba..5fb5bdc9b4 100644 --- a/src/calibre/gui2/dialogs/check_library.py +++ b/src/calibre/gui2/dialogs/check_library.py @@ -37,7 +37,6 @@ class DBCheck(QDialog): # {{{ self.resize(self.sizeHint() + QSize(100, 50)) self.error = None self.db = db.new_api - self.closed_orig_conn = False self.rejected = False def start(self): diff --git a/src/calibre/gui2/library/models.py b/src/calibre/gui2/library/models.py index 4b5df4d163..70997ebd4d 100644 --- a/src/calibre/gui2/library/models.py +++ b/src/calibre/gui2/library/models.py @@ -38,6 +38,7 @@ def human_readable(size, precision=1): """ Convert a size in bytes into megabytes """ return ('%.'+str(precision)+'f') % ((size/(1024.*1024.)),) + TIME_FMT = '%d %b %Y' ALIGNMENT_MAP = {'left': Qt.AlignLeft, 'right': Qt.AlignRight, 'center': @@ -333,9 +334,10 @@ class BooksModel(QAbstractTableModel): # {{{ self.new_bookdisplay_data.emit(self.get_book_display_info(current_row)) def close(self): - self.db.close() - self.db = None - self.beginResetModel(), self.endResetModel() + if self.db is not None: + self.db.close() + self.db = None + self.beginResetModel(), self.endResetModel() def add_books(self, paths, formats, metadata, add_duplicates=False, return_ids=False): @@ -1710,6 +1712,3 @@ class DeviceBooksModel(BooksModel): # {{{ self.editable = [] # }}} - - - diff --git a/src/calibre/gui2/ui.py b/src/calibre/gui2/ui.py index 06dea6bbb8..a6f29e9cfd 100644 --- a/src/calibre/gui2/ui.py +++ b/src/calibre/gui2/ui.py @@ -955,8 +955,7 @@ class Main(MainWindow, MainWindowMixin, DeviceMixin, EmailMixin, # {{{ if mb is not None: mb.stop() - if db is not None: - db.close() + self.library_view.model().close() try: try: