From b079be2445f4ff3333be38e4fe17911f69b6fbff Mon Sep 17 00:00:00 2001 From: Macocian Alexandru Victor Date: Sun, 1 Feb 2026 13:01:29 +0100 Subject: [PATCH] Fix exception when saving new builds (Closes #1359) (#1363) --- Daybreak/Views/BuildListView.razor.cs | 1 - Daybreak/Views/BuildTemplateViewModelBase.cs | 10 ++++++++++ Daybreak/Views/ExecutablesView.razor.cs | 2 +- 3 files changed, 11 insertions(+), 2 deletions(-) diff --git a/Daybreak/Views/BuildListView.razor.cs b/Daybreak/Views/BuildListView.razor.cs index b84c386e..956430bf 100644 --- a/Daybreak/Views/BuildListView.razor.cs +++ b/Daybreak/Views/BuildListView.razor.cs @@ -7,7 +7,6 @@ using Daybreak.Shared.Services.Toolbox; using Daybreak.Shared.Utils; using Microsoft.AspNetCore.Components.Web; using Microsoft.JSInterop; -using System.Core.Extensions; using System.Drawing; using System.Extensions; using TrailBlazr.Services; diff --git a/Daybreak/Views/BuildTemplateViewModelBase.cs b/Daybreak/Views/BuildTemplateViewModelBase.cs index 00c32ac1..c131d6b3 100644 --- a/Daybreak/Views/BuildTemplateViewModelBase.cs +++ b/Daybreak/Views/BuildTemplateViewModelBase.cs @@ -75,6 +75,11 @@ public abstract class BuildTemplateViewModelBase( public void BuildNameChanged(string buildName) { + if (this.View is null) + { + return; + } + this.ChangeBuildName(buildName); this.RefreshView(); } @@ -82,6 +87,11 @@ public abstract class BuildTemplateViewModelBase( public override sealed async ValueTask ParametersSet(TView view, CancellationToken cancellationToken) { var buildLoad = await this.buildTemplateManager.GetBuild(view.BuildName); + if (buildLoad is null) + { + return; + } + this.LoadBuild(buildLoad); this.UpdateBuildCode(); this.FilterSkillsByProfessionsAndString(); diff --git a/Daybreak/Views/ExecutablesView.razor.cs b/Daybreak/Views/ExecutablesView.razor.cs index 67132e2e..6b66b949 100644 --- a/Daybreak/Views/ExecutablesView.razor.cs +++ b/Daybreak/Views/ExecutablesView.razor.cs @@ -28,7 +28,7 @@ public class ExecutablesViewModel( public override ValueTask ParametersSet(ExecutablesView view, CancellationToken cancellationToken) { this.Executables.ClearAnd().AddRange(this.guildWarsExecutableManager.GetExecutableList().Select(s => new ExecutablePath { Path = s, Validating = true, Valid = false })); - _ = Task.Factory.StartNew(() => this.ValidateExecutables()) + _ = Task.Factory.StartNew(this.ValidateExecutables) .ContinueWith(t => this.AutoUpdate(t, view), CancellationToken.None); return base.ParametersSet(view, cancellationToken); }