From 35f01b1fb8996a64e7691773b45634f41d04cdd0 Mon Sep 17 00:00:00 2001 From: Charles Haley Date: Fri, 11 Apr 2025 11:12:52 +0100 Subject: [PATCH] Fix cleaning user categories that contain an item from a deleted column --- src/calibre/gui2/tag_browser/model.py | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/calibre/gui2/tag_browser/model.py b/src/calibre/gui2/tag_browser/model.py index f22587125f..93a0e9c49d 100644 --- a/src/calibre/gui2/tag_browser/model.py +++ b/src/calibre/gui2/tag_browser/model.py @@ -1737,8 +1737,10 @@ class TagsModel(QAbstractItemModel): # {{{ for cat in user_cats.keys(): new_cat = [] for val, key, _ in user_cats[cat]: - datatype = cache.field_metadata.get(key, {}).get('datatype', '*****') - if datatype != 'composite': + datatype = cache.field_metadata.get(key, {}).get('datatype') + # datatype can be None if a column used in user categories has + # been deleted. Remove it from the user categories + if datatype is not None and datatype != 'composite': id_ = cache.get_item_id(key, val, case_sensitive=True) if id_ is not None: v = cache.books_for_field(key, id_)