From aaf5d0d30254d27d319b2b5f5874ebe787537f0a Mon Sep 17 00:00:00 2001 From: exincore Date: Sat, 2 Mar 2024 06:44:24 -0600 Subject: [PATCH] Fix `ResearchSystem.Client` `UpdateClientInterface` preconditions. (#25743) * fix(research): Fix `ResearchSystem.Client` `UpdateClientInterface` preconditions. Fixes a paradox where selecting a research server requires a research server to already be selected. This would softlock the research client until it is reconstructed. * style: Discards the discard operator Co-authored-by: Nemanja <98561806+EmoGarbage404@users.noreply.github.com> --------- Co-authored-by: Nemanja <98561806+EmoGarbage404@users.noreply.github.com> --- Content.Server/Research/Systems/ResearchSystem.Client.cs | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/Content.Server/Research/Systems/ResearchSystem.Client.cs b/Content.Server/Research/Systems/ResearchSystem.Client.cs index 135ef8fe88..6bd5300d8f 100644 --- a/Content.Server/Research/Systems/ResearchSystem.Client.cs +++ b/Content.Server/Research/Systems/ResearchSystem.Client.cs @@ -82,12 +82,11 @@ public sealed partial class ResearchSystem if (!Resolve(uid, ref component, false)) return; - if (!TryGetClientServer(uid, out _, out var serverComponent, component)) - return; + TryGetClientServer(uid, out _, out var serverComponent, component); var names = GetServerNames(); var state = new ResearchClientBoundInterfaceState(names.Length, names, - GetServerIds(), component.ConnectedToServer ? serverComponent.Id : -1); + GetServerIds(), serverComponent?.Id ?? -1); _uiSystem.TrySetUiState(uid, ResearchClientUiKey.Key, state); }