Skip to content

Commit ac6d93a

Browse files
Add extra validity checks for GCF (#17)
* Add extra validity checks for GCF * Remove "for validity"
1 parent 1040282 commit ac6d93a

File tree

1 file changed

+9
-2
lines changed
  • SabreTools.Serialization/Deserializers

1 file changed

+9
-2
lines changed

SabreTools.Serialization/Deserializers/GCF.cs

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -104,8 +104,15 @@ public class GCF : BaseBinaryDeserializer<Models.GCF.File>
104104

105105
#region Directory Header
106106

107+
// Try to parse game cache directory header
108+
var directoryHeader = ParseDirectoryHeader(data);
109+
if (directoryHeader.Dummy0 != 0x00000004)
110+
return null;
111+
if (directoryHeader.Dummy1 != 0x00008000)
112+
return null;
113+
107114
// Set the game cache directory header
108-
file.DirectoryHeader = ParseDirectoryHeader(data);
115+
file.DirectoryHeader = directoryHeader;
109116

110117
#endregion
111118

@@ -662,4 +669,4 @@ public static Header ParseHeader(Stream data)
662669
return obj;
663670
}
664671
}
665-
}
672+
}

0 commit comments

Comments
 (0)