import sys from time import sleep from facefusion import process_manager, state_manager from facefusion.temp_helper import clear_temp_directory from facefusion.typing import ErrorCode def hard_exit(error_code : ErrorCode) -> None: sys.exit(error_code) def conditional_exit(error_code : ErrorCode) -> None: if state_manager.get_item('command') == 'headless-run': hard_exit(error_code) def graceful_exit(error_code : ErrorCode) -> None: process_manager.stop() while process_manager.is_processing(): sleep(0.5) if state_manager.get_item('target_path'): clear_temp_directory(state_manager.get_item('target_path')) hard_exit(error_code)