From 52b1b57e5d1740d4bcb4b4c361d49d7bd00f0d6b Mon Sep 17 00:00:00 2001 From: halgari Date: Tue, 17 Dec 2019 21:30:36 -0700 Subject: [PATCH] UI wasn't prompting for a new download when the list was updated --- Wabbajack.Common/Utils.cs | 4 ++-- Wabbajack.Lib/ModListRegistry/ModListMetadata.cs | 2 +- Wabbajack/View Models/ModListMetadataVM.cs | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/Wabbajack.Common/Utils.cs b/Wabbajack.Common/Utils.cs index 5cb77972..e4eeeadb 100644 --- a/Wabbajack.Common/Utils.cs +++ b/Wabbajack.Common/Utils.cs @@ -150,7 +150,7 @@ namespace Wabbajack.Common } } - public static string FileHashCached(this string file) + public static string FileHashCached(this string file, bool nullOnIOError = false) { var hashPath = file + Consts.HashFileExtension; if (File.Exists(hashPath) && File.GetLastWriteTime(file) <= File.GetLastWriteTime(hashPath)) @@ -158,7 +158,7 @@ namespace Wabbajack.Common return File.ReadAllText(hashPath); } - var hash = file.FileHash(); + var hash = file.FileHash(nullOnIOError); File.WriteAllText(hashPath, hash); return hash; } diff --git a/Wabbajack.Lib/ModListRegistry/ModListMetadata.cs b/Wabbajack.Lib/ModListRegistry/ModListMetadata.cs index 311a7cbc..c42f54c8 100644 --- a/Wabbajack.Lib/ModListRegistry/ModListMetadata.cs +++ b/Wabbajack.Lib/ModListRegistry/ModListMetadata.cs @@ -91,7 +91,7 @@ namespace Wabbajack.Lib.ModListRegistry { return true; } - return DownloadMetadata.Hash != modlistPath.FileHashCached(); + return DownloadMetadata.Hash != modlistPath.FileHashCached(true); } } diff --git a/Wabbajack/View Models/ModListMetadataVM.cs b/Wabbajack/View Models/ModListMetadataVM.cs index 1f8636ef..a719600f 100644 --- a/Wabbajack/View Models/ModListMetadataVM.cs +++ b/Wabbajack/View Models/ModListMetadataVM.cs @@ -76,7 +76,7 @@ namespace Wabbajack _Exists = Observable.Interval(TimeSpan.FromSeconds(0.5)) .Unit() .StartWith(Unit.Default) - .Select(_ => File.Exists(Location)) + .Select(_ => !metadata.NeedsDownload(Location)) .ToProperty(this, nameof(Exists)); }