From 1913e393212aaa2d58011b9a3803c2b441c2b16a Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Mon, 15 Mar 2021 16:38:11 +0530 Subject: [PATCH] Sanitize replacement strings --- src/calibre/ebooks/metadata/rtf.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/calibre/ebooks/metadata/rtf.py b/src/calibre/ebooks/metadata/rtf.py index 1d629c50d0..f425137321 100644 --- a/src/calibre/ebooks/metadata/rtf.py +++ b/src/calibre/ebooks/metadata/rtf.py @@ -206,7 +206,7 @@ def set_metadata(stream, options): def replace_or_create(src, name, val): val = encode(val) pat = re.compile(base_pat.replace('name', name), re.DOTALL) - src, num = pat.subn(r'{\\' + name + ' ' + val + '}', src) + src, num = pat.subn(r'{\\' + name.replace('\\', r'\\') + ' ' + val.replace('\\', r'\\') + '}', src) if num == 0: src = add_metadata_item(src, name, val) return src