diff --git a/SabreTools.Filtering/Filter.cs b/SabreTools.Filtering/Filter.cs index 7d0a9865..c650da08 100644 --- a/SabreTools.Filtering/Filter.cs +++ b/SabreTools.Filtering/Filter.cs @@ -56,6 +56,11 @@ namespace SabreTools.Filtering /// Filter for Machine fields /// public MachineFilter MachineFilter { get; set; } + + /// + /// Determines if any filters have been set + /// + public bool HasFilters { get; private set; } = false; #endregion @@ -111,6 +116,7 @@ namespace SabreTools.Filtering if (machineField != MachineField.NULL) { MachineFilter.SetFilter(machineField, value, negate); + HasFilters = true; continue; } @@ -119,6 +125,7 @@ namespace SabreTools.Filtering if (datItemField != DatItemField.NULL) { DatItemFilter.SetFilter(datItemField, value, negate); + HasFilters = true; continue; } @@ -376,6 +383,10 @@ namespace SabreTools.Filtering if (MachineFilter == null || DatItemFilter == null) return false; + // If no filters were set, return true + if (HasFilters) + return true; + InternalStopwatch watch = new InternalStopwatch("Applying filters to DAT"); // If we're filtering per machine, bucket by machine first