diff --git a/src/calibre/gui2/actions/__init__.py b/src/calibre/gui2/actions/__init__.py index 390cdc34e1..dcaf846a18 100644 --- a/src/calibre/gui2/actions/__init__.py +++ b/src/calibre/gui2/actions/__init__.py @@ -345,9 +345,5 @@ class InterfaceAction(QObject): Called once per plugin when the main GUI is in the process of shutting down. Release any used resources, but try not to block the shutdown for long periods of time. - - :return: False to halt the shutdown. You are responsible for telling - the user why the shutdown was halted. - ''' - return True + pass diff --git a/src/calibre/gui2/ui.py b/src/calibre/gui2/ui.py index ce11877e2a..05abe44673 100644 --- a/src/calibre/gui2/ui.py +++ b/src/calibre/gui2/ui.py @@ -930,7 +930,8 @@ class Main(MainWindow, MainWindowMixin, DeviceMixin, EmailMixin, # {{{ try: self.shutdown() except: - pass + import traceback + traceback.print_exc() self.restart_after_quit = restart self.debug_on_restart = debug_on_restart if self.system_tray_icon is not None and self.restart_after_quit: @@ -994,8 +995,7 @@ class Main(MainWindow, MainWindowMixin, DeviceMixin, EmailMixin, # {{{ db.commit_dirty_cache() db.prefs.write_serialized(prefs['library_path']) for action in self.iactions.values(): - if not action.shutting_down(): - return + action.shutting_down() if write_settings: self.write_settings() self.check_messages_timer.stop()