From 1dfe6aea54c1e8c6d8f6dd8588e7d3ab48ceea8e Mon Sep 17 00:00:00 2001 From: "seer-by-sentry[bot]" <157164994+seer-by-sentry[bot]@users.noreply.github.com> Date: Fri, 30 Jan 2026 21:33:44 +0000 Subject: [PATCH] Fix PartitionManager m_radiusVec out-of-bounds access --- .../GameEngine/Source/GameLogic/Object/PartitionManager.cpp | 3 +++ 1 file changed, 3 insertions(+) diff --git a/Generals/Code/GameEngine/Source/GameLogic/Object/PartitionManager.cpp b/Generals/Code/GameEngine/Source/GameLogic/Object/PartitionManager.cpp index 57bd9bca84..86e11df1bd 100644 --- a/Generals/Code/GameEngine/Source/GameLogic/Object/PartitionManager.cpp +++ b/Generals/Code/GameEngine/Source/GameLogic/Object/PartitionManager.cpp @@ -3302,6 +3302,9 @@ Object *PartitionManager::getClosestObjects( */ for (Int curRadius = 0; curRadius <= maxRadiusLimit; ++curRadius) { + // Safety check: ensure m_radiusVec is initialized and curRadius is within bounds + if (m_radiusVec.empty() || curRadius >= static_cast(m_radiusVec.size())) + continue; const OffsetVec& offsets = m_radiusVec[curRadius]; if (offsets.empty()) continue;