From e05684d5d13335e5c0d869430a0f46639f42b45c Mon Sep 17 00:00:00 2001 From: Glax Date: Sun, 26 May 2024 18:22:51 +0200 Subject: [PATCH] Fix loading file results in "null"-job and crashes. --- Tranga/Jobs/JobBoss.cs | 17 +++++++++++++---- 1 file changed, 13 insertions(+), 4 deletions(-) diff --git a/Tranga/Jobs/JobBoss.cs b/Tranga/Jobs/JobBoss.cs index 275864b..c8cd28b 100644 --- a/Tranga/Jobs/JobBoss.cs +++ b/Tranga/Jobs/JobBoss.cs @@ -151,10 +151,19 @@ public class JobBoss : GlobalBase foreach (FileInfo file in new DirectoryInfo(settings.jobsFolderPath).EnumerateFiles().Where(fileInfo => idRex.IsMatch(fileInfo.Name))) { Log($"Adding {file.Name}"); - Job job = JsonConvert.DeserializeObject(File.ReadAllText(file.FullName), - new JobJsonConverter(this, new MangaConnectorJsonConverter(this, connectors)))!; - Log($"Adding Job {job}"); - this.jobs.Add(job); + Job? job = JsonConvert.DeserializeObject(File.ReadAllText(file.FullName), + new JobJsonConverter(this, new MangaConnectorJsonConverter(this, connectors))); + if (job is null) + { + string newName = file.FullName + ".failed"; + Log($"Failed loading file {file.Name}.\nMoving to {newName}"); + File.Move(file.FullName, newName); + } + else + { + Log($"Adding Job {job}"); + this.jobs.Add(job); + } } //Connect jobs to parent-jobs and add Publications to cache