The stored delegate list would store delegates indefinitely, causing a
memory leak. It is now the responsibility of each class to maintain
references to any callback functions it defines.
objc_disposeClassPair(handle);
}
- static List<Delegate> storedDelegates = new List<Delegate>();
-
public static void RegisterMethod(IntPtr handle, Delegate d, string selector, string typeString)
{
// TypeString info:
{
throw new ArgumentException("Could not register method " + d + " in class + " + class_getName(handle));
}
-
- storedDelegates.Add(d); // Don't let the garbage collector eat our delegates.
}
}
}