Introduce signal_exit()
This commit is contained in:
@@ -2,7 +2,6 @@ import itertools
|
||||
import shutil
|
||||
import signal
|
||||
import sys
|
||||
from functools import partial
|
||||
from time import time
|
||||
|
||||
import numpy
|
||||
@@ -12,7 +11,7 @@ from facefusion.args import apply_args, collect_job_args, reduce_job_args, reduc
|
||||
from facefusion.common_helper import get_first
|
||||
from facefusion.content_analyser import analyse_image, analyse_video
|
||||
from facefusion.download import conditional_download_hashes, conditional_download_sources
|
||||
from facefusion.exit_helper import graceful_exit, hard_exit
|
||||
from facefusion.exit_helper import signal_exit, hard_exit
|
||||
from facefusion.face_analyser import get_average_face, get_many_faces, get_one_face
|
||||
from facefusion.face_selector import sort_and_filter_faces
|
||||
from facefusion.face_store import append_reference_face, clear_reference_faces, get_reference_faces
|
||||
@@ -32,7 +31,7 @@ from facefusion.vision import pack_resolution, read_image, read_static_images, r
|
||||
|
||||
def cli() -> None:
|
||||
if pre_check():
|
||||
signal.signal(signal.SIGINT, partial(graceful_exit, 0))
|
||||
signal.signal(signal.SIGINT, signal_exit)
|
||||
program = create_program()
|
||||
|
||||
if validate_args(program):
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
import signal
|
||||
import sys
|
||||
from time import sleep
|
||||
from types import FrameType
|
||||
|
||||
from facefusion import process_manager, state_manager
|
||||
from facefusion.temp_helper import clear_temp_directory
|
||||
@@ -12,6 +13,10 @@ def hard_exit(error_code : ErrorCode) -> None:
|
||||
sys.exit(error_code)
|
||||
|
||||
|
||||
def signal_exit(signum : int, frame : FrameType):
|
||||
graceful_exit(0)
|
||||
|
||||
|
||||
def graceful_exit(error_code : ErrorCode) -> None:
|
||||
process_manager.stop()
|
||||
while process_manager.is_processing():
|
||||
|
||||
@@ -5,6 +5,7 @@ import subprocess
|
||||
import sys
|
||||
from argparse import ArgumentParser, HelpFormatter
|
||||
from functools import partial
|
||||
from types import FrameType
|
||||
|
||||
from facefusion import metadata, wording
|
||||
from facefusion.common_helper import is_linux, is_windows
|
||||
@@ -23,7 +24,7 @@ if is_linux():
|
||||
|
||||
|
||||
def cli() -> None:
|
||||
signal.signal(signal.SIGINT, partial(sys.exit, 0))
|
||||
signal.signal(signal.SIGINT, signal_exit)
|
||||
program = ArgumentParser(formatter_class = partial(HelpFormatter, max_help_position = 50))
|
||||
program.add_argument('--onnxruntime', help = wording.get('help.install_dependency').format(dependency = 'onnxruntime'), choices = ONNXRUNTIME_SET.keys(), required = True)
|
||||
program.add_argument('--skip-conda', help = wording.get('help.skip_conda'), action = 'store_true')
|
||||
@@ -31,6 +32,10 @@ def cli() -> None:
|
||||
run(program)
|
||||
|
||||
|
||||
def signal_exit(signum : int, frame : FrameType):
|
||||
sys.exit(0)
|
||||
|
||||
|
||||
def run(program : ArgumentParser) -> None:
|
||||
args = program.parse_args()
|
||||
has_conda = 'CONDA_PREFIX' in os.environ
|
||||
|
||||
Reference in New Issue
Block a user