You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Currently, when the Unsubscribe method receives a multicast delegate, it removes each individual handler from the weak event source. Since it has a role similar to Delegate.Remove, it should be consistent with the behavior of that method. Delegate.Remove removes the last occurrence of the whole invocation list of the specified delegate; if it doesn't find the exact list, it doesn't remove anything.
Suggested by @Weldryn in #11, see the discussion there for details.
The text was updated successfully, but these errors were encountered:
@Weldryn, if you want to implement this, I suggest you start by writing (failing) unit tests to document the desired behavior (TDD-style). When we agree on what the exact behavior should be, based on these tests, you can start to actually implement it.
Hi @Weldryn, I released a beta with this change. Since you raised the issue in the first place, would you be interested in testing the change to make sure it works as you expected?
Currently, when the
Unsubscribe
method receives a multicast delegate, it removes each individual handler from the weak event source. Since it has a role similar toDelegate.Remove
, it should be consistent with the behavior of that method.Delegate.Remove
removes the last occurrence of the whole invocation list of the specified delegate; if it doesn't find the exact list, it doesn't remove anything.Suggested by @Weldryn in #11, see the discussion there for details.
The text was updated successfully, but these errors were encountered: