From d271d8e0b8aa08fb2cf08d297e20dba900811c6c Mon Sep 17 00:00:00 2001 From: Matt Nadareski Date: Mon, 30 Sep 2024 19:47:56 -0400 Subject: [PATCH] Ensure standard header copies all fields --- SabreTools.DatFiles/DatHeader.cs | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/SabreTools.DatFiles/DatHeader.cs b/SabreTools.DatFiles/DatHeader.cs index a832cef6..6ec1d418 100644 --- a/SabreTools.DatFiles/DatHeader.cs +++ b/SabreTools.DatFiles/DatHeader.cs @@ -151,6 +151,18 @@ namespace SabreTools.DatFiles if (header.ContainsKey(fieldName)) _internal[fieldName] = header[fieldName]; } + + // Get all fields specific to the DatFiles implementation + var nonStandardFields = TypeHelper.GetConstants(typeof(DatHeader)); + if (nonStandardFields == null) + return; + + // Populate the internal machine from filter fields + foreach (string fieldName in nonStandardFields) + { + if (header.ContainsKey(fieldName)) + _internal[fieldName] = header[fieldName]; + } } #endregion