From dd74903eff17ab1dd34db30f676e048d99950918 Mon Sep 17 00:00:00 2001 From: rootdarkarchon Date: Wed, 2 Aug 2023 11:48:07 +0200 Subject: [PATCH] fix handling for finishrequest --- .../Services/RequestQueueService.cs | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/MareSynchronosServer/MareSynchronosStaticFilesServer/Services/RequestQueueService.cs b/MareSynchronosServer/MareSynchronosStaticFilesServer/Services/RequestQueueService.cs index 9bfb488..44b9a67 100644 --- a/MareSynchronosServer/MareSynchronosStaticFilesServer/Services/RequestQueueService.cs +++ b/MareSynchronosServer/MareSynchronosStaticFilesServer/Services/RequestQueueService.cs @@ -72,10 +72,17 @@ public class RequestQueueService : IHostedService public void FinishRequest(Guid request) { - var req = _userQueueRequests.First(f => f != null && f.UserRequest.RequestId == request); - var idx = Array.IndexOf(_userQueueRequests, req); - _logger.LogDebug("Finishing Request {guid}, clearing slot {idx}", request, idx); - _userQueueRequests[idx] = null; + var req = _userQueueRequests.FirstOrDefault(f => f != null && f.UserRequest.RequestId == request); + if (req != null) + { + var idx = Array.IndexOf(_userQueueRequests, req); + _logger.LogDebug("Finishing Request {guid}, clearing slot {idx}", request, idx); + _userQueueRequests[idx] = null; + } + else + { + _logger.LogDebug("Request {guid} already cleared", request); + } } public bool IsActiveProcessing(Guid request, string user, out UserRequest userRequest)