diff --git a/src/calibre/gui2/tag_browser/model.py b/src/calibre/gui2/tag_browser/model.py index 377ace6efa..b8cb11b5af 100644 --- a/src/calibre/gui2/tag_browser/model.py +++ b/src/calibre/gui2/tag_browser/model.py @@ -404,7 +404,6 @@ class TagsModel(QAbstractItemModel): # {{{ sort_by = config['sort_tags_by'] eval_formatter = EvalFormatter() - intermediate_nodes = {} if data is None: print ('_create_node_tree: no data!') @@ -584,23 +583,19 @@ class TagsModel(QAbstractItemModel): # {{{ else: if i < len(components)-1: original_name = '.'.join(components[:i+1]) - t = intermediate_nodes.get((original_name, tag.category), None) - if t is None: - t = copy.copy(tag) - t.original_name = original_name - t.count = 0 - if key != 'search': - # This 'manufactured' intermediate node can - # be searched, but cannot be edited. - t.is_editable = False - else: - t.is_searchable = t.is_editable = False - intermediate_nodes[(original_name, tag.category)] = t + t = copy.copy(tag) + t.original_name = original_name + t.count = 0 + if key != 'search': + # This 'manufactured' intermediate node can + # be searched, but cannot be edited. + t.is_editable = False + else: + t.is_searchable = t.is_editable = False else: t = tag if not in_uc: t.original_name = t.name - intermediate_nodes[(t.original_name, tag.category)] = t t.is_hierarchical = \ '5state' if t.category != 'search' else '3state' t.name = comp