From fd004db4b933ad8b4515f57347b7bd6c17af153c Mon Sep 17 00:00:00 2001 From: derrod Date: Wed, 16 Dec 2020 12:32:19 +0100 Subject: [PATCH] [downloader] Move optional file deletion tasks to the end --- legendary/downloader/manager.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/legendary/downloader/manager.py b/legendary/downloader/manager.py index 86d0df6..6aa3fc6 100644 --- a/legendary/downloader/manager.py +++ b/legendary/downloader/manager.py @@ -138,6 +138,7 @@ class DLManager(Process): self.log.warning(f'Reading resume file failed: {e!r}, continuing as normal...') # Install tags are used for selective downloading, e.g. for language packs + additional_deletion_tasks = [] if file_install_tag is not None: if isinstance(file_install_tag, str): file_install_tag = [file_install_tag] @@ -150,7 +151,7 @@ class DLManager(Process): mc.changed -= files_to_skip mc.unchanged |= files_to_skip for fname in sorted(files_to_skip): - self.tasks.append(FileTask(fname, delete=True, silent=True)) + additional_deletion_tasks.append(FileTask(fname, delete=True, silent=True)) # if include/exclude prefix has been set: mark all files that are not to be downloaded as unchanged if file_exclude_filter: @@ -384,6 +385,7 @@ class DLManager(Process): # add jobs to remove files for fname in mc.removed: self.tasks.append(FileTask(fname, delete=True)) + self.tasks.extend(additional_deletion_tasks) analysis_res.num_chunks_cache = len(dl_cache_guids) self.chunk_data_list = manifest.chunk_data_list