diff --git a/src/calibre/gui2/viewer/bookmarks.py b/src/calibre/gui2/viewer/bookmarks.py index bc918ada01..81146cb53a 100644 --- a/src/calibre/gui2/viewer/bookmarks.py +++ b/src/calibre/gui2/viewer/bookmarks.py @@ -10,7 +10,7 @@ from qt.core import ( QPushButton, Qt, QWidget, pyqtSignal, ) -from calibre.gui2 import choose_files, choose_save_file +from calibre.gui2 import choose_files, choose_save_file, error_dialog from calibre.gui2.dialogs.confirm_delete import confirm from calibre.gui2.gestures import GestureManager from calibre.gui2.viewer.shortcuts import get_shortcut_for @@ -367,6 +367,9 @@ class BookmarkManager(QWidget): return title = self.uniqify_bookmark_title(title) cfi = (pos_data.get('selection_bounds') or {}).get('start') or pos_data['cfi'] + if not cfi: + error_dialog(self, _('Failed to bookmark'), _('Could not calculate position in book'), show=True) + return bm = { 'title': title, 'pos_type': 'epubcfi',