From fbd3b9372bfda4c7379d1fd7a19c13483249dc29 Mon Sep 17 00:00:00 2001 From: Wojtek Figat Date: Mon, 12 Aug 2024 15:35:02 +0200 Subject: [PATCH] Fix crash when reading invalid data from file --- Source/Engine/Content/Storage/FlaxStorage.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/Source/Engine/Content/Storage/FlaxStorage.cpp b/Source/Engine/Content/Storage/FlaxStorage.cpp index 29bcd5bfc..1af7c03ec 100644 --- a/Source/Engine/Content/Storage/FlaxStorage.cpp +++ b/Source/Engine/Content/Storage/FlaxStorage.cpp @@ -1088,7 +1088,7 @@ bool FlaxStorage::LoadAssetHeader(const Entry& e, AssetInitData& data) { int32 chunkIndex; stream->ReadInt32(&chunkIndex); - if (chunkIndex >= _chunks.Count()) + if (chunkIndex < -1 || chunkIndex >= _chunks.Count()) { LOG(Warning, "Invalid chunks mapping."); return true; @@ -1145,7 +1145,7 @@ bool FlaxStorage::LoadAssetHeader(const Entry& e, AssetInitData& data) { int32 chunkIndex; stream->ReadInt32(&chunkIndex); - if (chunkIndex >= _chunks.Count()) + if (chunkIndex < -1 || chunkIndex >= _chunks.Count()) { LOG(Warning, "Invalid chunks mapping."); return true; @@ -1200,7 +1200,7 @@ bool FlaxStorage::LoadAssetHeader(const Entry& e, AssetInitData& data) { int32 chunkIndex; stream->ReadInt32(&chunkIndex); - if (chunkIndex >= _chunks.Count()) + if (chunkIndex < -1 || chunkIndex >= _chunks.Count()) { LOG(Warning, "Invalid chunks mapping."); return true;