From 972dd997fccd7ebeb707fc94045085fa0b6f831b Mon Sep 17 00:00:00 2001 From: Chomp Date: Wed, 28 May 2025 18:25:14 +0100 Subject: [PATCH] Fixed null being thrown when searching for an item that has no offers requiring it --- .../SPTarkov.Server.Core/Helpers/RagfairOfferHelper.cs | 3 ++- .../Services/RagfairRequiredItemsService.cs | 9 ++++++--- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/Libraries/SPTarkov.Server.Core/Helpers/RagfairOfferHelper.cs b/Libraries/SPTarkov.Server.Core/Helpers/RagfairOfferHelper.cs index b594630a..a462acd0 100644 --- a/Libraries/SPTarkov.Server.Core/Helpers/RagfairOfferHelper.cs +++ b/Libraries/SPTarkov.Server.Core/Helpers/RagfairOfferHelper.cs @@ -167,8 +167,9 @@ public class RagfairOfferHelper( /// Matching RagfairOffer objects public List GetOffersThatRequireItem(SearchRequestData searchRequest, PmcData pmcData) { - // Get all offers that require the desired item and filter out offers from non traders if player below ragifar unlock + // Get all offers that require the desired item and filter out offers from non traders if player below ragfair unlock var requiredOffers = _ragfairRequiredItemsService.GetRequiredItemsById(searchRequest.NeededSearchId); + var tieredFlea = _ragfairConfig.TieredFlea; var tieredFleaLimitTypes = tieredFlea.UnlocksType; return requiredOffers.Where(offer => diff --git a/Libraries/SPTarkov.Server.Core/Services/RagfairRequiredItemsService.cs b/Libraries/SPTarkov.Server.Core/Services/RagfairRequiredItemsService.cs index ce7968f2..518e7e29 100644 --- a/Libraries/SPTarkov.Server.Core/Services/RagfairRequiredItemsService.cs +++ b/Libraries/SPTarkov.Server.Core/Services/RagfairRequiredItemsService.cs @@ -12,11 +12,14 @@ public class RagfairRequiredItemsService( { protected ConcurrentDictionary> _requiredItemsCache = new(); - public List? GetRequiredItemsById(string searchId) + public List GetRequiredItemsById(string searchId) { - _requiredItemsCache.TryGetValue(searchId, out var list); + if (_requiredItemsCache.TryGetValue(searchId, out var list)) + { + return list; + } - return list; + return []; } public void BuildRequiredItemTable()