From 0c1071a35867a1b0528c1fce88d0b691507fe49a Mon Sep 17 00:00:00 2001 From: Alex Xu Date: Wed, 8 Jul 2026 17:22:23 -0700 Subject: [PATCH] fix Access is denied with read only input folder (2013 bug) (#1387) * fix Access is denied on read only input folders * minimize changes --- kindlecomicconverter/comic2ebook.py | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/kindlecomicconverter/comic2ebook.py b/kindlecomicconverter/comic2ebook.py index 2e3db22..4b5888c 100755 --- a/kindlecomicconverter/comic2ebook.py +++ b/kindlecomicconverter/comic2ebook.py @@ -1205,7 +1205,15 @@ def removeNonImages(filetree): os.rmdir(root) if not os.listdir(Path(filetree).parent): - raise UserWarning('No images detected, nested archives are not supported.') + warning = [ + 'No images detected.', + '', + 'Possible causes:', + '', + '1) Incompatible image file extension like .jxl. Convert to .png first outside of KCC.', + '2) Nested archive: Either extract the nested archive outside of KCC or use File Fusion option.', + ] + raise RuntimeError('\n'.join(warning)) def sanitizeTree(filetree, prefix='kcc'): @@ -1254,6 +1262,7 @@ def flattenTree(filetree): def sanitizePermissions(filetree): + os.chmod(filetree, S_IWRITE | S_IREAD | S_IEXEC) for root, dirs, files in os.walk(filetree, False): for name in files: os.chmod(os.path.join(root, name), S_IWRITE | S_IREAD)