From e665220bafa890327565b49c159847d416e4dde5 Mon Sep 17 00:00:00 2001 From: henryruhs Date: Mon, 19 Jan 2026 09:37:08 +0100 Subject: [PATCH] Fix for Windows --- facefusion/apis/endpoints/assets.py | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/facefusion/apis/endpoints/assets.py b/facefusion/apis/endpoints/assets.py index 0e35ebf4..902a8183 100644 --- a/facefusion/apis/endpoints/assets.py +++ b/facefusion/apis/endpoints/assets.py @@ -11,7 +11,7 @@ from facefusion import ffmpeg, session_manager, state_manager from facefusion.apis import asset_store from facefusion.apis.asset_helper import detect_media_type from facefusion.apis.endpoints.session import extract_access_token -from facefusion.filesystem import get_file_extension +from facefusion.filesystem import get_file_extension, remove_file async def upload_asset(request : Request) -> Response: @@ -49,11 +49,13 @@ async def save_asset_files(upload_files : List[UploadFile]) -> List[str]: for upload_file in upload_files: upload_file_extension = get_file_extension(upload_file.filename) - with tempfile.NamedTemporaryFile(suffix = upload_file_extension) as temp_file: + with tempfile.NamedTemporaryFile(suffix = upload_file_extension, delete = False) as temp_file: while upload_chunk := await upload_file.read(1024): temp_file.write(upload_chunk) + temp_file.flush() + media_type = detect_media_type(temp_file.name) temp_path = state_manager.get_temp_path() asset_path = os.path.join(temp_path, temp_file.name + '.' + upload_file_extension) @@ -67,4 +69,6 @@ async def save_asset_files(upload_files : List[UploadFile]) -> List[str]: if media_type == 'video' and ffmpeg.sanitize_video(temp_file.name, asset_path): asset_paths.append(asset_path) + remove_file(temp_file.name) + return asset_paths