diff --git a/PkmnLibSharp/Utilities/PointerWrapper.cs b/PkmnLibSharp/Utilities/PointerWrapper.cs index 9d74dc4..aa10ba1 100644 --- a/PkmnLibSharp/Utilities/PointerWrapper.cs +++ b/PkmnLibSharp/Utilities/PointerWrapper.cs @@ -30,6 +30,12 @@ namespace PkmnLibSharp.Utilities Cached.TryAdd(ptr, weakRef); } + ~PointerWrapper() + { + if (!_isDeleted) + Cached.TryRemove(Ptr, out _); + } + public static bool TryResolvePointer(IntPtr p, out T result) where T : PointerWrapper { if (Cached.TryGetValue(p, out var val))