diff --git a/SabreTools.Library/DatFiles/DatFile.cs b/SabreTools.Library/DatFiles/DatFile.cs index 396fa092..f738cd02 100644 --- a/SabreTools.Library/DatFiles/DatFile.cs +++ b/SabreTools.Library/DatFiles/DatFile.cs @@ -701,26 +701,22 @@ namespace SabreTools.Library.DatFiles } /// - /// Populate the user DatData object from the input files + /// Populate from multiple paths while returning the invividual headers /// /// Paths to DATs to parse - /// ExtraIni object to apply to the DatFile - /// Filter object to be passed to the DatItem level - /// List of DatData objects representing headers - public List PopulateUserData(List inputs, ExtraIni extras, Filter filter) + /// List of DatHeader objects representing headers + public List PopulateUserData(List inputs) { List paths = inputs.Select(i => new ParentablePath(i)).ToList(); - return PopulateUserData(paths, extras, filter); + return PopulateUserData(paths); } /// - /// Populate the user DatData object from the input files + /// Populate from multiple paths while returning the invividual headers /// /// Paths to DATs to parse - /// ExtraIni object to apply to the DatFile - /// Filter object to be passed to the DatItem level - /// List of DatData objects representing headers - public List PopulateUserData(List inputs, ExtraIni extras, Filter filter) + /// List of DatHeader objects representing headers + public List PopulateUserData(List inputs) { DatFile[] datFiles = new DatFile[inputs.Count]; InternalStopwatch watch = new InternalStopwatch("Processing individual DATs"); @@ -742,10 +738,6 @@ namespace SabreTools.Library.DatFiles AddFromExisting(datFiles[i], true); } - // Now that we have a merged DAT, apply extras and filter it - ApplyExtras(extras); - ApplyFilter(filter, false /* useTags */); - watch.Stop(); return datFiles.Select(d => d.Header).ToList(); diff --git a/SabreTools/Features/Update.cs b/SabreTools/Features/Update.cs index 1c15ae33..37a88a5a 100644 --- a/SabreTools/Features/Update.cs +++ b/SabreTools/Features/Update.cs @@ -195,9 +195,13 @@ namespace SabreTools.Features // Populate using the correct set List datHeaders; if (updateMode.HasFlag(UpdateMode.DiffAgainst) || updateMode.HasFlag(UpdateMode.BaseReplace)) - datHeaders = userInputDat.PopulateUserData(basePaths, Extras, Filter); + datHeaders = userInputDat.PopulateUserData(basePaths); else - datHeaders = userInputDat.PopulateUserData(inputPaths, Extras, Filter); + datHeaders = userInputDat.PopulateUserData(inputPaths); + + // Apply the extras and filter + userInputDat.ApplyExtras(Extras); + userInputDat.ApplyFilter(Filter, false); // Output only DatItems that are duplicated across inputs if (updateMode.HasFlag(UpdateMode.DiffDupesOnly))