From 197648b78aeeeb4b1b212a594721fc40c95ed8f7 Mon Sep 17 00:00:00 2001 From: RezTech <> Date: Wed, 13 Mar 2024 20:53:26 -0400 Subject: [PATCH 1/5] Update Project Dependencies Bump FATX to target netstandard2.1 Bump FATXTools to target .NET 8 and Windows 10 Bump System.Text.Json to 8.0.3 --- FATX/FATX.csproj | 4 ++-- FATXTools/FATXTools.csproj | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/FATX/FATX.csproj b/FATX/FATX.csproj index 62fcf91..f93d505 100644 --- a/FATX/FATX.csproj +++ b/FATX/FATX.csproj @@ -1,11 +1,11 @@  - netstandard2.0 + netstandard2.1 - + diff --git a/FATXTools/FATXTools.csproj b/FATXTools/FATXTools.csproj index 2e90d26..6766b99 100644 --- a/FATXTools/FATXTools.csproj +++ b/FATXTools/FATXTools.csproj @@ -1,6 +1,6 @@  - netcoreapp3.1 + net8.0-windows10.0.19041.0 WinExe publish\ true @@ -71,7 +71,7 @@ - 4.7.2 + 8.0.3 \ No newline at end of file From e6ff63dbae98c201ce0369053179f19c9c50b696 Mon Sep 17 00:00:00 2001 From: RezTech <> Date: Wed, 13 Mar 2024 20:57:56 -0400 Subject: [PATCH 2/5] Update TimeStamp.cs Fix crash when attempting to dump incorrectly parsed files --- FATX/FileSystem/TimeStamp.cs | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/FATX/FileSystem/TimeStamp.cs b/FATX/FileSystem/TimeStamp.cs index cc8430d..f9df198 100644 --- a/FATX/FileSystem/TimeStamp.cs +++ b/FATX/FileSystem/TimeStamp.cs @@ -26,6 +26,7 @@ public class TimeStamp { private uint _Time; private DateTime? _DateTime; + private readonly DateTime _minWinFileTime = new DateTime(1601, 01, 01); public TimeStamp(uint time) { @@ -70,6 +71,11 @@ public DateTime AsDateTime() { if (this._DateTime.HasValue) { + if (this._DateTime < _minWinFileTime) + { + return _minWinFileTime; + } + return this._DateTime.Value; } else From 09766d20412e2367488afc1313d758eee8b35db3 Mon Sep 17 00:00:00 2001 From: Alexander Georgiadis Date: Mon, 18 Mar 2024 08:58:54 -0400 Subject: [PATCH 3/5] Update build.yaml Update .NET actions from .NET Core 3.0 to .NET 8.0 --- .github/workflows/build.yaml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index 27a7b27..acba680 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -16,11 +16,11 @@ jobs: with: fetch-depth: 0 - # Install the .NET Core workload - - name: Install .NET Core - uses: actions/setup-dotnet@v1 + # Setup .NET + - name: Setup .NET + uses: actions/setup-dotnet@v4 with: - dotnet-version: 3.1 + dotnet-version: 8.0 # Add MSBuild to the PATH: https://github.com/microsoft/setup-msbuild - name: Setup MSBuild.exe From d86ce13b950f7ebef42ba09e79cf52f9b9a0f4f8 Mon Sep 17 00:00:00 2001 From: FreeTheTech101 Date: Thu, 21 Mar 2024 22:28:39 -0400 Subject: [PATCH 4/5] Update TimeStamp.cs Further fixes for invalid time stamps. Although the original patch was enough to get this working in my case, it seems this is required for others --- FATX/FileSystem/TimeStamp.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/FATX/FileSystem/TimeStamp.cs b/FATX/FileSystem/TimeStamp.cs index f9df198..d3ea6d3 100644 --- a/FATX/FileSystem/TimeStamp.cs +++ b/FATX/FileSystem/TimeStamp.cs @@ -103,7 +103,7 @@ public DateTime AsDateTime() } catch (Exception) { - _DateTime = DateTime.MinValue; + _DateTime = _minWinFileTime; } return _DateTime.Value; From 85622ec0c750f80e1e4431ea704aa063ebf91b7e Mon Sep 17 00:00:00 2001 From: FreeTheTech101 Date: Thu, 21 Mar 2024 22:29:46 -0400 Subject: [PATCH 5/5] Update build.yaml Update actions/checkout from v2 to v4 Update microsoft/setup-msbuild from v1.0.2 to v2 --- .github/workflows/build.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index acba680..628500c 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -12,7 +12,7 @@ jobs: steps: - name: Checkout - uses: actions/checkout@v2 + uses: actions/checkout@v4 with: fetch-depth: 0 @@ -24,7 +24,7 @@ jobs: # Add MSBuild to the PATH: https://github.com/microsoft/setup-msbuild - name: Setup MSBuild.exe - uses: microsoft/setup-msbuild@v1.0.2 + uses: microsoft/setup-msbuild@v2 # Restore the application to populate the obj folder with RuntimeIdentifiers - name: Restore the application