From 289e9f8800c5a7c54ea8cf13ed10a43887453574 Mon Sep 17 00:00:00 2001 From: Anton Firszov Date: Fri, 27 Aug 2021 17:49:11 +0200 Subject: [PATCH] pass only "pinnable: this" to MemoryHandle --- .../Memory/Allocators/Internals/ManagedBufferBase.cs | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/ImageSharp/Memory/Allocators/Internals/ManagedBufferBase.cs b/src/ImageSharp/Memory/Allocators/Internals/ManagedBufferBase.cs index f88c3a5f45..296a8bd3a7 100644 --- a/src/ImageSharp/Memory/Allocators/Internals/ManagedBufferBase.cs +++ b/src/ImageSharp/Memory/Allocators/Internals/ManagedBufferBase.cs @@ -24,7 +24,9 @@ namespace SixLabors.ImageSharp.Memory.Internals } void* ptr = (void*)this.pinHandle.AddrOfPinnedObject(); - return new MemoryHandle(ptr, this.pinHandle, this); + + // We should only pass pinnable:this, when GCHandle lifetime is managed by the MemoryManager instance. + return new MemoryHandle(ptr, pinnable: this); } ///