From 1a0e9a287a7a76991a870b24a80bef38c041850b Mon Sep 17 00:00:00 2001 From: SpoinkyNL Date: Tue, 14 Jan 2020 21:31:12 +0100 Subject: [PATCH] Fix undo/redo crash when no layer element is selected --- .../Services/ProfileEditorService.cs | 22 ++++++++++++------- 1 file changed, 14 insertions(+), 8 deletions(-) diff --git a/src/Artemis.UI/Services/ProfileEditorService.cs b/src/Artemis.UI/Services/ProfileEditorService.cs index 0a795ee0e..211fd56bf 100644 --- a/src/Artemis.UI/Services/ProfileEditorService.cs +++ b/src/Artemis.UI/Services/ProfileEditorService.cs @@ -88,11 +88,14 @@ namespace Artemis.UI.Services _profileService.UndoUpdateProfile(SelectedProfile, module); OnSelectedProfileChanged(); - var elements = SelectedProfile.GetAllLayers().Cast().ToList(); - elements.AddRange(SelectedProfile.GetAllFolders()); + if (SelectedProfileElement != null) + { + var elements = SelectedProfile.GetAllLayers().Cast().ToList(); + elements.AddRange(SelectedProfile.GetAllFolders()); + var element = elements.FirstOrDefault(l => l.EntityId == SelectedProfileElement.EntityId); + ChangeSelectedProfileElement(element); + } - var element = elements.FirstOrDefault(l => l.EntityId == SelectedProfileElement.EntityId); - ChangeSelectedProfileElement(element); UpdateProfilePreview(); } @@ -101,11 +104,14 @@ namespace Artemis.UI.Services _profileService.RedoUpdateProfile(SelectedProfile, module); OnSelectedProfileChanged(); - var elements = SelectedProfile.GetAllLayers().Cast().ToList(); - elements.AddRange(SelectedProfile.GetAllFolders()); + if (SelectedProfileElement != null) + { + var elements = SelectedProfile.GetAllLayers().Cast().ToList(); + elements.AddRange(SelectedProfile.GetAllFolders()); + var element = elements.FirstOrDefault(l => l.EntityId == SelectedProfileElement.EntityId); + ChangeSelectedProfileElement(element); + } - var element = elements.FirstOrDefault(l => l.EntityId == SelectedProfileElement.EntityId); - ChangeSelectedProfileElement(element); UpdateProfilePreview(); }