This commit is contained in:
Sky Zhang 2025-12-08 09:05:55 +08:00 committed by GitHub
commit 8bb723bce1
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -80,10 +80,8 @@ def aria2_download_url(model_url: str, model_dir: str, filename: str):
import tqdm import tqdm
import time import time
if model_dir.startswith(core.comfy_path): download_dir = model_dir
model_dir = model_dir[len(core.comfy_path) :] filename += '.downloading' # aria2 uses .downloading suffix for incomplete files
download_dir = model_dir if model_dir.startswith('/') else os.path.join('/models', model_dir)
download = aria2_find_task(download_dir, filename) download = aria2_find_task(download_dir, filename)
if download is None: if download is None:
@ -105,6 +103,17 @@ def aria2_download_url(model_url: str, model_dir: str, filename: str):
time.sleep(1) time.sleep(1)
download.update() download.update()
if download.is_complete and download.completed_length == download.total_length:
file_path = os.path.join(download_dir, filename)
final_path = file_path[:-len('.downloading')] # remove the .downloading suffix
if os.path.exists(file_path):
os.rename(file_path, final_path)
logging.info(f"Download completed: {final_path}")
else:
logging.error(f"Download directory {file_path} does not exist after download completion.")
else:
logging.error(f"Download failed or incomplete: {download.status} for {model_url}")
def download_url_with_agent(url, save_path): def download_url_with_agent(url, save_path):
try: try: