From 02429266b1a2b180b10870a926b6fb0c4508d283 Mon Sep 17 00:00:00 2001 From: Wojtek Figat Date: Wed, 3 Dec 2025 05:03:21 -0800 Subject: [PATCH] Fix `Array::RemoveAtKeepOrder` to avoid memory override with large mem copy --- Source/Engine/Core/Collections/Array.h | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/Source/Engine/Core/Collections/Array.h b/Source/Engine/Core/Collections/Array.h index 4f660d2a9..919ff8f80 100644 --- a/Source/Engine/Core/Collections/Array.h +++ b/Source/Engine/Core/Collections/Array.h @@ -658,7 +658,10 @@ public: --_count; T* data = _allocation.Get(); if (index < _count) - Memory::MoveAssignItems(data + index, data + (index + 1), _count - index); + { + for (int32 i = index; i < _count; i++) + data[i] = MoveTemp(data[i + 1]); + } Memory::DestructItems(data + _count, 1); }