diff --git a/SabreTools.Serialization/Deserializers/InstallShieldArchiveV3.cs b/SabreTools.Serialization/Deserializers/InstallShieldArchiveV3.cs index 2cddbb85..7e0d4f6c 100644 --- a/SabreTools.Serialization/Deserializers/InstallShieldArchiveV3.cs +++ b/SabreTools.Serialization/Deserializers/InstallShieldArchiveV3.cs @@ -49,12 +49,12 @@ namespace SabreTools.Serialization.Deserializers var directories = new List(); for (int i = 0; i < header.DirCount; i++) { - var directory = ParseDirectory(data, out uint chunkSize); + var directory = ParseDirectory(data); if (directory?.Name == null) return null; directories.Add(directory); - data.Seek(chunkSize - directory.Name.Length - 6, SeekOrigin.Current); + data.Seek(directory.ChunkSize - directory.Name.Length - 6, SeekOrigin.Current); } // Set the directories @@ -112,16 +112,9 @@ namespace SabreTools.Serialization.Deserializers /// /// Stream to parse /// Filled directory on success, null on error - public static Models.InstallShieldArchiveV3.Directory? ParseDirectory(Stream data, out uint chunkSize) + public static Models.InstallShieldArchiveV3.Directory? ParseDirectory(Stream data) { - // TODO: Use ReadType when model is fixed - var directory = new Models.InstallShieldArchiveV3.Directory(); - - directory.FileCount = data.ReadUInt16(); - chunkSize = data.ReadUInt16(); // TODO: Add to model and remove from output params - directory.Name = data.ReadPrefixedAnsiString(); - - return directory; + return data.ReadType(); } ///