From ab4ad1be85e4a89ec41e5f4dbd2f4dcd143927e4 Mon Sep 17 00:00:00 2001 From: Charles Haley <> Date: Tue, 25 Jan 2011 22:17:28 +0000 Subject: [PATCH] Fix adding user category search terms --- src/calibre/library/field_metadata.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/calibre/library/field_metadata.py b/src/calibre/library/field_metadata.py index 78fe899fa8..cfd95b2e3c 100644 --- a/src/calibre/library/field_metadata.py +++ b/src/calibre/library/field_metadata.py @@ -7,6 +7,7 @@ import copy from calibre.utils.ordered_dict import OrderedDict from calibre.utils.config import tweaks +from calibre.utils.icu import lower class TagsIcons(dict): ''' @@ -471,7 +472,8 @@ class FieldMetadata(dict): self.custom_label_to_key_map[label+'_index'] = key def remove_dynamic_categories(self): - for key in list(self._tb_cats.keys()): + keys = list(self._tb_cats.keys())[:] + for key in keys: val = self._tb_cats[key] if val['is_category'] and val['kind'] in ('user', 'search'): del self._tb_cats[key] @@ -482,6 +484,7 @@ class FieldMetadata(dict): return self._tb_cats[key]['rec_index'] + 1 def add_user_category(self, label, name): + label = lower(label) if label in self._tb_cats: raise ValueError('Duplicate user field [%s]'%(label)) self._tb_cats[label] = {'table':None, 'column':None,