From c8059f3cd19add91d26c598742add814f34165ad Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Tue, 26 Jul 2022 15:32:56 +0530 Subject: [PATCH] Fix #1982651 [Details pane: Clicking on enumerated item with ampersand produces incorrect search](https://bugs.launchpad.net/calibre/+bug/1982651) --- src/calibre/ebooks/metadata/book/render.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/calibre/ebooks/metadata/book/render.py b/src/calibre/ebooks/metadata/book/render.py index 8439a142c6..64c75c5f6c 100644 --- a/src/calibre/ebooks/metadata/book/render.py +++ b/src/calibre/ebooks/metadata/book/render.py @@ -257,7 +257,7 @@ def mi_to_html( val = mi.format_field(field)[-1] ans.append((field, row % (name, val))) else: - val = mi.format_field(field)[-1] + val = unescaped_val = mi.format_field(field)[-1] if val is None: continue val = p(val) @@ -311,8 +311,8 @@ def mi_to_html( except Exception: st = field val = '{}'.format( - search_action_with_data(st, val, book_id, field), a( - _('Click to see books with {0}: {1}').format(metadata['name'] or field, val)), p(val)) + search_action_with_data(st, unescaped_val, book_id, field), a( + _('Click to see books with {0}: {1}').format(metadata['name'] or field, val)), val) elif metadata['datatype'] == 'bool': val = '{}'.format( search_action_with_data(field, val, book_id, None), a(