diff --git a/Patching/PatchFile.cs b/Patching/PatchFile.cs index ed90e6a0..f5ad16d7 100644 --- a/Patching/PatchFile.cs +++ b/Patching/PatchFile.cs @@ -180,7 +180,7 @@ internal void Load(string patchPath) _patches = _googleDiff.patch_fromText(patchText); } - string revertPath = Path.ChangeExtension(patchPath, ".grevert"); + string revertPath = Path.ChangeExtension(patchPath, Path.GetExtension(patchPath) == ".gpat" ? ".grev" : ".grevert"); if (!File.Exists(revertPath)) { return; diff --git a/Patching/PatchList.cs b/Patching/PatchList.cs index 04ed86aa..08c3fa45 100644 --- a/Patching/PatchList.cs +++ b/Patching/PatchList.cs @@ -238,13 +238,13 @@ public static PatchList Load( string fromFolder) { return patches; } - foreach (string patchPath in Directory.EnumerateFiles(fromFolder, "*.gpatch", + foreach (string patchPath in Directory.EnumerateFiles(fromFolder, "*.gpat??", SearchOption.AllDirectories)) { PatchFile patch = new PatchFile { TargetPath = patchPath.Substring(fromFolder.Length + 1, - patchPath.Length - (fromFolder.Length + 8)) + patchPath.Length - (fromFolder.Length + Path.GetExtension(patchPath).Length)) }; patch.Load(patchPath); patches.Add(patch); diff --git a/Patching/Patches/DCS/002_009_00004_53990_00000/Viewports/mods/Aircraft/Mirage-F1/Cockpit/Mirage-F1/Mirage-F1_Common/Radar_Cyrano_IV_legacy/Indicator/BakedGeneral/CyranoLegacy_bake_general_init.lua.gpatch b/Patching/Patches/DCS/002_009_00004_53990_00000/Viewports/mods/Aircraft/Mirage-F1/Cockpit/Mirage-F1/Mirage-F1_Common/Radar_Cyrano_IV_legacy/Indicator/BakedGeneral/CyranoLegacy_bake_general_init.lua.gpat similarity index 100% rename from Patching/Patches/DCS/002_009_00004_53990_00000/Viewports/mods/Aircraft/Mirage-F1/Cockpit/Mirage-F1/Mirage-F1_Common/Radar_Cyrano_IV_legacy/Indicator/BakedGeneral/CyranoLegacy_bake_general_init.lua.gpatch rename to Patching/Patches/DCS/002_009_00004_53990_00000/Viewports/mods/Aircraft/Mirage-F1/Cockpit/Mirage-F1/Mirage-F1_Common/Radar_Cyrano_IV_legacy/Indicator/BakedGeneral/CyranoLegacy_bake_general_init.lua.gpat diff --git a/Patching/Patches/DCS/002_009_00004_53990_00000/Viewports/mods/Aircraft/Mirage-F1/Cockpit/Mirage-F1/Mirage-F1_Common/Radar_Cyrano_IV_legacy/Indicator/BakedGeneral/CyranoLegacy_bake_general_init.lua.grevert b/Patching/Patches/DCS/002_009_00004_53990_00000/Viewports/mods/Aircraft/Mirage-F1/Cockpit/Mirage-F1/Mirage-F1_Common/Radar_Cyrano_IV_legacy/Indicator/BakedGeneral/CyranoLegacy_bake_general_init.lua.grev similarity index 100% rename from Patching/Patches/DCS/002_009_00004_53990_00000/Viewports/mods/Aircraft/Mirage-F1/Cockpit/Mirage-F1/Mirage-F1_Common/Radar_Cyrano_IV_legacy/Indicator/BakedGeneral/CyranoLegacy_bake_general_init.lua.grevert rename to Patching/Patches/DCS/002_009_00004_53990_00000/Viewports/mods/Aircraft/Mirage-F1/Cockpit/Mirage-F1/Mirage-F1_Common/Radar_Cyrano_IV_legacy/Indicator/BakedGeneral/CyranoLegacy_bake_general_init.lua.grev diff --git a/Patching/Patching.csproj b/Patching/Patching.csproj index 0d46c357..e82e9563 100644 --- a/Patching/Patching.csproj +++ b/Patching/Patching.csproj @@ -9514,8 +9514,12 @@ PreserveNewest - - + + PreserveNewest + + + PreserveNewest + PreserveNewest @@ -10392,12 +10396,12 @@ PreserveNewest - + PreserveNewest - - + + PreserveNewest - + diff --git a/Tools/TestApplyPatches/TestApplyPatches.cs b/Tools/TestApplyPatches/TestApplyPatches.cs index 00944937..71b24e13 100644 --- a/Tools/TestApplyPatches/TestApplyPatches.cs +++ b/Tools/TestApplyPatches/TestApplyPatches.cs @@ -67,11 +67,11 @@ private static void TestDcsPatches() const string testsRoot = "..\\..\\..\\..\\Patches\\DCS\\002_005_005_41371\\"; diff_match_patch googleDiff = new diff_match_patch(); - foreach (string testFilePath in Directory.EnumerateFiles(testsRoot, "*.gpatch", SearchOption.AllDirectories) + foreach (string testFilePath in Directory.EnumerateFiles(testsRoot, "*.gpat??", SearchOption.AllDirectories) ) { Debug.Assert(testFilePath.Contains(testsRoot)); - string testFileRelative = testFilePath.Replace(testsRoot, "").Replace(".gpatch", ""); + string testFileRelative = testFilePath.Replace(testsRoot, "").Replace(".gpatch", "").Replace(".gpat", ""); string source = ReadFile(Path.Combine(dcsRoot, testFileRelative)); @@ -87,7 +87,7 @@ private static void TestDcsPatches() CheckApplied(googleDiff, testFilePath, patches, patched); - List reverts = googleDiff.patch_fromText(ReadFile(testFilePath.Replace(".gpatch", ".grevert"))); + List reverts = googleDiff.patch_fromText(ReadFile(testFilePath.Replace(".gpatch", ".grevert").Replace(".gpat", ".grev"))); string reverted = ApplyPatches(googleDiff, patched, reverts); CompareEquals(googleDiff, testFilePath, source, reverted);