From d57626c04321ce0fa32b0bbebb61dcf00522d974 Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Wed, 20 Nov 2019 08:28:54 +0530 Subject: [PATCH] Handle non-UTF-8 filenames in cache directory when expiring --- src/calibre/gui2/viewer/convert_book.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/calibre/gui2/viewer/convert_book.py b/src/calibre/gui2/viewer/convert_book.py index 3f1e1e3850..59e39685d0 100644 --- a/src/calibre/gui2/viewer/convert_book.py +++ b/src/calibre/gui2/viewer/convert_book.py @@ -55,7 +55,10 @@ def robust_rmtree(x): retries = 2 if iswindows else 1 # retry on windows to get around the idiotic mandatory file locking for i in range(retries): try: - rmtree(x) + try: + rmtree(x) + except UnicodeDecodeError: + rmtree(as_bytes(x)) return True except EnvironmentError: time.sleep(0.1)