From c3e8621de64b9d9e212fb5cd368944206198d71b Mon Sep 17 00:00:00 2001 From: trawzified <55751269+tr4wzified@users.noreply.github.com> Date: Sat, 20 Jul 2024 11:58:04 +0200 Subject: [PATCH 1/3] Add logging to determine faulty file on hashing errors --- Wabbajack.Installer/StandardInstaller.cs | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/Wabbajack.Installer/StandardInstaller.cs b/Wabbajack.Installer/StandardInstaller.cs index b839c09d..c77b149f 100644 --- a/Wabbajack.Installer/StandardInstaller.cs +++ b/Wabbajack.Installer/StandardInstaller.cs @@ -247,7 +247,16 @@ public class StandardInstaller : AInstaller var metaFile = download.WithExtension(Ext.Meta); var found = bySize[download.Size()]; - var hash = await FileHashCache.FileHashCachedAsync(download, token); + Hash hash = default; + try + { + hash = await FileHashCache.FileHashCachedAsync(download, token); + } + catch(Exception ex) + { + _logger.LogError($"Failed to get hash for file {download}!"); + throw; + } var archive = found.FirstOrDefault(f => f.Hash == hash); IEnumerable meta; From dfeec6b2351f32126bb63da8135ec8032db4ecd2 Mon Sep 17 00:00:00 2001 From: trawzified <55751269+tr4wzified@users.noreply.github.com> Date: Sun, 11 Aug 2024 23:13:43 +0200 Subject: [PATCH 2/3] Fix FO3/FNV/LE BSA file paths with special characters getting corrupted when packed into BSAs --- Wabbajack.Compression.BSA/BinaryHelperExtensions.cs | 1 + 1 file changed, 1 insertion(+) diff --git a/Wabbajack.Compression.BSA/BinaryHelperExtensions.cs b/Wabbajack.Compression.BSA/BinaryHelperExtensions.cs index 203dd9c1..96bba0b3 100644 --- a/Wabbajack.Compression.BSA/BinaryHelperExtensions.cs +++ b/Wabbajack.Compression.BSA/BinaryHelperExtensions.cs @@ -23,6 +23,7 @@ public static class BinaryHelperExtensions return version switch { VersionType.TES3 => Encoding.ASCII, + VersionType.FO3 => Encoding.UTF8, VersionType.SSE => Windows1252, _ => Encoding.UTF7 }; From 0ffe0ca8f469b563902cfd8817eeb54b2639b5cf Mon Sep 17 00:00:00 2001 From: trawzified <55751269+tr4wzified@users.noreply.github.com> Date: Sun, 11 Aug 2024 23:22:30 +0200 Subject: [PATCH 3/3] Update changelog --- CHANGELOG.md | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index f17def0a..8d76f815 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,11 @@ ### Changelog +#### Version - 3.7.1.0 - ? +* Fixed file paths with special characters corrupting when packed into BSAs + * This issue only affected Fallout 3, Fallout NV and Skyrim LE +* Added logging to determine which downloaded files cannot be hashed + * This could occur in the downloading phase when installing a modlist when there are broken/corrupted files in the downloads folder + #### Version - 3.7.0.0 - 6/21/2024 * Added Starfield support * Note: Hashes were added earlier, but the earlier version was not fully compatible due to Wabbajack extracting the BA2 archives incorrectly. This has been fixed.