diff --git a/src/ObservableCollections/Internal/CloneCollection.cs b/src/ObservableCollections/Internal/CloneCollection.cs index 6daed60..b7082a8 100644 --- a/src/ObservableCollections/Internal/CloneCollection.cs +++ b/src/ObservableCollections/Internal/CloneCollection.cs @@ -74,8 +74,10 @@ namespace ObservableCollections.Internal { if (array.Length == index) { + var newArray = ArrayPool.Shared.Rent(index * 2); + Array.Copy(array, newArray, index); ArrayPool.Shared.Return(array, RuntimeHelpersEx.IsReferenceOrContainsReferences()); - array = ArrayPool.Shared.Rent(index * 2); + array = newArray; } }