From dae5c6cee4588b6313fc43d1bcb4d3d6e85e1983 Mon Sep 17 00:00:00 2001 From: Brian Fiete Date: Sat, 5 Oct 2019 10:25:07 -0700 Subject: [PATCH] Fixed GC issue --- BeefLibs/corlib/src/Delegate.bf | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/BeefLibs/corlib/src/Delegate.bf b/BeefLibs/corlib/src/Delegate.bf index 08cfc815..f631976f 100644 --- a/BeefLibs/corlib/src/Delegate.bf +++ b/BeefLibs/corlib/src/Delegate.bf @@ -31,6 +31,12 @@ namespace System mTarget = target; mFuncPtr = ptr; } + + protected override void GCMarkMembers() + { + // Note- this is safe even if mTarget is not an object, because the GC does object address validation + GC.Mark(Internal.UnsafeCastToObject(mTarget)); + } } struct Function : int