From bdc3beb15a64b520072f5f8b8b844cde2b5dfd2d Mon Sep 17 00:00:00 2001 From: JustArchi Date: Wed, 10 Jun 2020 22:43:06 +0200 Subject: [PATCH] Do not report warning over having empty list of packagesData It can be empty if we're not able to fetch any of given packageIDs, e.g. because of missing token. --- ArchiSteamFarm/GlobalDatabase.cs | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/ArchiSteamFarm/GlobalDatabase.cs b/ArchiSteamFarm/GlobalDatabase.cs index 32dee6233..8d27c70f0 100644 --- a/ArchiSteamFarm/GlobalDatabase.cs +++ b/ArchiSteamFarm/GlobalDatabase.cs @@ -195,17 +195,26 @@ namespace ArchiSteamFarm { Dictionary AppIDs)> packagesData = await bot.GetPackagesData(packageIDs).ConfigureAwait(false); - if ((packagesData == null) || (packagesData.Count == 0)) { + if (packagesData == null) { bot.ArchiLogger.LogGenericWarning(Strings.WarningFailed); return; } + bool save = false; + foreach ((uint packageID, (uint ChangeNumber, HashSet AppIDs) packageData) in packagesData) { + if (PackagesData.TryGetValue(packageID, out (uint ChangeNumber, HashSet AppIDs) previousData) && (packageData.ChangeNumber <= previousData.ChangeNumber)) { + continue; + } + PackagesData[packageID] = packageData; + save = true; } - Utilities.InBackground(Save); + if (save) { + Utilities.InBackground(Save); + } } finally { PackagesRefreshSemaphore.Release(); }