diff --git a/dangerzone/__init__.py b/dangerzone/__init__.py index f029398..a67ebcf 100644 --- a/dangerzone/__init__.py +++ b/dangerzone/__init__.py @@ -4,6 +4,12 @@ import sys logger = logging.getLogger(__name__) +# Call freeze_support() to avoid passing unknown options to the subprocess. +# See https://github.com/freedomofpress/dangerzone/issues/873 +import multiprocessing + +multiprocessing.freeze_support() + try: from . import vendor # type: ignore [attr-defined] diff --git a/dangerzone/gui/main_window.py b/dangerzone/gui/main_window.py index 0f9b79c..fd86817 100644 --- a/dangerzone/gui/main_window.py +++ b/dangerzone/gui/main_window.py @@ -3,7 +3,6 @@ import os import platform import tempfile import typing -from multiprocessing import freeze_support from multiprocessing.pool import ThreadPool from pathlib import Path from typing import List, Optional @@ -1238,9 +1237,6 @@ class DocumentsListWidget(QtWidgets.QListWidget): def start_conversion(self) -> None: if not self.thread_pool_initized: max_jobs = self.dangerzone.isolation_provider.get_max_parallel_conversions() - # Call freeze_support() to avoid passing unknown options to the subprocess. - # See https://github.com/freedomofpress/dangerzone/issues/873 - freeze_support() self.thread_pool = ThreadPool(max_jobs) for doc in self.docs_list: