From d6834063c1f3eb731bc695fc1b42db6ba67ee920 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E3=83=95=E3=82=A3=E3=83=AB=E3=82=BF=E3=83=BC=E3=83=9A?= =?UTF-8?q?=E3=83=BC=E3=83=91=E3=83=BC?= <76888457+filterpaper@users.noreply.github.com> Date: Fri, 24 Apr 2026 05:53:45 +0800 Subject: [PATCH] avoid orphan dir in tempdir and fix disk size check with tempdir (#1302) * Use tempdir option for fusion path * Update makeFusion to use the same temporary directory location * Avoid creating an orphan "KCC-" in TMPDIR when --tempdir is set * Ensure disk space check follows --tempdir setting * revert some things * revert some things --- kindlecomicconverter/comic2ebook.py | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/kindlecomicconverter/comic2ebook.py b/kindlecomicconverter/comic2ebook.py index 8000c55..7af4e54 100755 --- a/kindlecomicconverter/comic2ebook.py +++ b/kindlecomicconverter/comic2ebook.py @@ -873,14 +873,18 @@ def mupdf_pdf_process_pages_parallel(filename, output_dir, target_width, target_ def getWorkFolder(afile, workdir=None): if not workdir: - workdir = mkdtemp('', 'KCC-') if options.tempdir: workdir = mkdtemp('', 'KCC-', os.path.dirname(afile)) + else: + workdir = mkdtemp('', 'KCC-') fullPath = os.path.join(workdir, 'OEBPS', 'Images') else: fullPath = workdir + check_path = gettempdir() + if options.tempdir: + check_path = os.path.dirname(afile) if os.path.isdir(afile): - if disk_usage(gettempdir())[2] < getDirectorySize(afile) * 2.5: + if disk_usage(check_path)[2] < getDirectorySize(afile) * 2.5: raise UserWarning("Not enough disk space to perform conversion.") try: copytree(afile, fullPath) @@ -890,7 +894,7 @@ def getWorkFolder(afile, workdir=None): rmtree(workdir, True) raise UserWarning("Failed to prepare a workspace.") elif os.path.isfile(afile): - if disk_usage(gettempdir())[2] < os.path.getsize(afile) * 2.5: + if disk_usage(check_path)[2]< os.path.getsize(afile) * 2.5: raise UserWarning("Not enough disk space to perform conversion.") if afile.lower().endswith('.pdf'): if not os.path.exists(fullPath):