diff --git a/SabreTools.DatFiles/DatFile.FromMetadata.cs b/SabreTools.DatFiles/DatFile.FromMetadata.cs index c564a905..0431bbfe 100644 --- a/SabreTools.DatFiles/DatFile.FromMetadata.cs +++ b/SabreTools.DatFiles/DatFile.FromMetadata.cs @@ -416,7 +416,8 @@ namespace SabreTools.DatFiles } if (item.ContainsKey(Models.Metadata.Machine.DiskKey)) { - var items = ReadItemArray(item, Models.Metadata.Machine.DiskKey); + var items = ReadItemArray(item, Models.Metadata.Machine.DiskKey) + ?? ReadItemArray(item, Models.Metadata.Machine.DiskKey)?.Select(d => (d as Models.Metadata.Disk)!)?.ToArray(); // TODO: Remove case when Serialization fixed ProcessItems(items, machine, machineIndex, filename, indexId, statsOnly); } if (item.ContainsKey(Models.Metadata.Machine.DisplayKey)) @@ -477,7 +478,8 @@ namespace SabreTools.DatFiles } if (item.ContainsKey(Models.Metadata.Machine.RomKey)) { - var items = ReadItemArray(item, Models.Metadata.Machine.RomKey); + var items = ReadItemArray(item, Models.Metadata.Machine.RomKey) + ?? ReadItemArray(item, Models.Metadata.Machine.RomKey)?.Select(d => (d as Models.Metadata.Rom)!)?.ToArray(); // TODO: Remove case when Serialization fixed ProcessItems(items, machine, machineIndex, filename, indexId, statsOnly); } if (item.ContainsKey(Models.Metadata.Machine.SampleKey))