From 771315bb3e7dcac648be35d1e4411ac4523d02cd Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Fri, 17 Apr 2026 13:48:56 +0530 Subject: [PATCH] Fix multiprocessing forkserver not working with python 3.14.4 Because of this: https://github.com/python/cpython/pull/148195 --- src/calibre/utils/ipc/worker.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/calibre/utils/ipc/worker.py b/src/calibre/utils/ipc/worker.py index 27b3da364f..d3bfa68263 100644 --- a/src/calibre/utils/ipc/worker.py +++ b/src/calibre/utils/ipc/worker.py @@ -166,8 +166,9 @@ def get_func(name): def main(): if '__multiprocessing__' in sys.argv: - payload = sys.argv[-1] - sys.argv = [sys.argv[0], '--multiprocessing-fork'] + idx = sys.argv.index('__multiprocessing__') + payload = sys.argv[idx+1] + sys.argv = [sys.argv[0], '--multiprocessing-fork'] + sys.argv[idx + 2:] exec(payload) return 0 if ismacos and 'CALIBRE_WORKER_FD' not in os.environ and 'CALIBRE_SIMPLE_WORKER' not in os.environ and '--pipe-worker' not in sys.argv: