From 7297c4116e8e6433195223bae2da953a5c0cca7c Mon Sep 17 00:00:00 2001 From: goat Date: Sun, 11 Dec 2022 20:04:27 +0100 Subject: [PATCH 1/7] build: 7.3.2.0 --- Dalamud/Dalamud.csproj | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Dalamud/Dalamud.csproj b/Dalamud/Dalamud.csproj index 579807ab2..1885623af 100644 --- a/Dalamud/Dalamud.csproj +++ b/Dalamud/Dalamud.csproj @@ -8,7 +8,7 @@ - 7.3.1.0 + 7.3.2.0 XIV Launcher addon framework $(DalamudVersion) $(DalamudVersion) From d5e5a2df314fbab880012161d73892456b3f8ae9 Mon Sep 17 00:00:00 2001 From: goat Date: Sun, 11 Dec 2022 20:15:22 +0100 Subject: [PATCH 2/7] update tracks in readme --- README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 22e77f0c6..f98961c3e 100644 --- a/README.md +++ b/README.md @@ -40,8 +40,8 @@ We are currently working from the following branches. | Name | Purpose | .NET Version | Track | |---|---|---|---| -| *master* | Upgrade to .NET 6 | .NET 6.0.3 (March 2022) | Staging | -| *net5* | Current release branch | .NET 5.0.6 (May 2021) | Release | +| *master* | Current release branch | .NET 6.0.3 (March 2022) | Release & Staging | +| *net7* | Upgrade to .NET 7 | .NET 7.0.0 (November 2022) | net7 | | *api3* | Legacy version, no longer in active use | .NET Framework 4.7.2 (April 2017) | - |
From b41554ea748b869aa95fcdba3ac47ce8beffea8d Mon Sep 17 00:00:00 2001 From: NotNite Date: Tue, 20 Dec 2022 10:33:36 -0500 Subject: [PATCH 3/7] Fix runtime_present for ReShade 5/GShade 4 --- .../Internal/DXGI/SwapChainVtableResolver.cs | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) diff --git a/Dalamud/Game/Internal/DXGI/SwapChainVtableResolver.cs b/Dalamud/Game/Internal/DXGI/SwapChainVtableResolver.cs index dda7b6184..489e204a8 100644 --- a/Dalamud/Game/Internal/DXGI/SwapChainVtableResolver.cs +++ b/Dalamud/Game/Internal/DXGI/SwapChainVtableResolver.cs @@ -68,9 +68,26 @@ public class SwapChainVtableResolver : BaseAddressResolver, ISwapChainAddressRes // DXGISwapChain::handle_device_loss => DXGISwapChain::Present => DXGISwapChain::runtime_present var scanner = new SigScanner(processModule); + var runtimePresentSig = "F6 C2 01 0F 85 ?? ?? ?? ??"; + try { - var p = scanner.ScanText("F6 C2 01 0F 85 ?? ?? ?? ??"); // E8 ?? ?? ?? ?? 45 0F B6 5E ?? + var fileInfo = FileVersionInfo.GetVersionInfo(processModule.FileName); + + if (fileInfo.FileMajorPart >= 5) + { + // ReShade 5/GShade 4 + runtimePresentSig = "E8 ?? ?? ?? ?? 45 0F B6 5E ??"; + } + } + catch (Exception ex) + { + Log.Error(ex, "Failed to get reshade version info - falling back to default DXGISwapChain::runtime_present signature"); + } + + try + { + var p = scanner.ScanText(runtimePresentSig); Log.Information($"ReShade DLL: {processModule.FileName} with DXGISwapChain::runtime_present at {p:X}"); this.Present = p; From 04fb5e01d13f3392faf9e731496aff9a175fee37 Mon Sep 17 00:00:00 2001 From: goat <16760685+goaaats@users.noreply.github.com> Date: Tue, 20 Dec 2022 20:30:48 +0100 Subject: [PATCH 4/7] build: 7.3.3.0 --- Dalamud/Dalamud.csproj | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Dalamud/Dalamud.csproj b/Dalamud/Dalamud.csproj index 1885623af..33dabbe6b 100644 --- a/Dalamud/Dalamud.csproj +++ b/Dalamud/Dalamud.csproj @@ -8,7 +8,7 @@
- 7.3.2.0 + 7.3.3.0 XIV Launcher addon framework $(DalamudVersion) $(DalamudVersion) From 2d1caeb8b0688133fdf75ad463284b7486e50ef0 Mon Sep 17 00:00:00 2001 From: goat Date: Mon, 26 Dec 2022 15:02:07 +0100 Subject: [PATCH 5/7] fix: only pick new sig for GShade 4.X --- Dalamud/Game/Internal/DXGI/SwapChainVtableResolver.cs | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/Dalamud/Game/Internal/DXGI/SwapChainVtableResolver.cs b/Dalamud/Game/Internal/DXGI/SwapChainVtableResolver.cs index 489e204a8..ce42f6265 100644 --- a/Dalamud/Game/Internal/DXGI/SwapChainVtableResolver.cs +++ b/Dalamud/Game/Internal/DXGI/SwapChainVtableResolver.cs @@ -74,9 +74,10 @@ public class SwapChainVtableResolver : BaseAddressResolver, ISwapChainAddressRes { var fileInfo = FileVersionInfo.GetVersionInfo(processModule.FileName); - if (fileInfo.FileMajorPart >= 5) + // Looks like this sig only works for GShade 4 + if (fileInfo.FileDescription?.Contains("GShade 4.") == true) { - // ReShade 5/GShade 4 + Log.Verbose("Hooking present for GShade 4"); runtimePresentSig = "E8 ?? ?? ?? ?? 45 0F B6 5E ??"; } } From 5c5f6be6ee4d5d29a0533d39b3e45ff4b9ffe896 Mon Sep 17 00:00:00 2001 From: goat Date: Mon, 26 Dec 2022 15:02:45 +0100 Subject: [PATCH 6/7] build: 7.3.4.0 --- Dalamud/Dalamud.csproj | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Dalamud/Dalamud.csproj b/Dalamud/Dalamud.csproj index 33dabbe6b..b1005163c 100644 --- a/Dalamud/Dalamud.csproj +++ b/Dalamud/Dalamud.csproj @@ -8,7 +8,7 @@ - 7.3.3.0 + 7.3.4.0 XIV Launcher addon framework $(DalamudVersion) $(DalamudVersion) From 63fe36920a482b44aa1568588a77966ee1ec78f7 Mon Sep 17 00:00:00 2001 From: goat Date: Mon, 26 Dec 2022 15:05:54 +0100 Subject: [PATCH 7/7] fix: "pick and restart" option in branch switcher not saving in time --- Dalamud/Configuration/Internal/DalamudConfiguration.cs | 10 +++++++++- .../Interface/Internal/Windows/BranchSwitcherWindow.cs | 3 +++ 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/Dalamud/Configuration/Internal/DalamudConfiguration.cs b/Dalamud/Configuration/Internal/DalamudConfiguration.cs index f623f8007..cce922697 100644 --- a/Dalamud/Configuration/Internal/DalamudConfiguration.cs +++ b/Dalamud/Configuration/Internal/DalamudConfiguration.cs @@ -370,13 +370,21 @@ internal sealed class DalamudConfiguration : IServiceType } /// - /// Save the configuration at the path it was loaded from. + /// Save the configuration at the path it was loaded from, at the next frame. /// public void QueueSave() { this.isSaveQueued = true; } + /// + /// Immediately save the configuration. + /// + public void ForceSave() + { + this.Save(); + } + /// /// Save the file, if needed. Only needs to be done once a frame. /// diff --git a/Dalamud/Interface/Internal/Windows/BranchSwitcherWindow.cs b/Dalamud/Interface/Internal/Windows/BranchSwitcherWindow.cs index e934f9df6..dd2d911ff 100644 --- a/Dalamud/Interface/Internal/Windows/BranchSwitcherWindow.cs +++ b/Dalamud/Interface/Internal/Windows/BranchSwitcherWindow.cs @@ -103,6 +103,9 @@ public class BranchSwitcherWindow : Window { Pick(); + // If we exit immediately, we need to write out the new config now + Service.Get().ForceSave(); + var appData = Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData); var xlPath = Path.Combine(appData, "XIVLauncher", "XIVLauncher.exe");