diff --git a/SabreTools.DatItems/DatItem.cs b/SabreTools.DatItems/DatItem.cs
index 0e46f325..22bd83b8 100644
--- a/SabreTools.DatItems/DatItem.cs
+++ b/SabreTools.DatItems/DatItem.cs
@@ -291,7 +291,8 @@ namespace SabreTools.DatItems
/// True if the item passes the filter, false otherwise
public bool PassesFilter(FilterRunner filterRunner)
{
- if (!GetFieldValue(DatItem.MachineKey)!.PassesFilter(filterRunner))
+ var machine = GetFieldValue(DatItem.MachineKey);
+ if (machine != null && !machine.PassesFilter(filterRunner))
return false;
return filterRunner.Run(_internal);