From aef523bea727909447d4a7d7567d3f7fb3c0754f Mon Sep 17 00:00:00 2001 From: hrrrrustic <35951936+hrrrrustic@users.noreply.github.com> Date: Tue, 13 Oct 2020 09:00:34 -0400 Subject: [PATCH] make AsyncFlowControl implement IEquatable (#43232) * make AsyncFlowControl implement IEquatable, fixes #31996 * remove test * remove extra space --- .../System.Private.CoreLib/src/System/Threading/ExecutionContext.cs | 4 ++-- src/libraries/System.Threading/ref/System.Threading.cs | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/libraries/System.Private.CoreLib/src/System/Threading/ExecutionContext.cs b/src/libraries/System.Private.CoreLib/src/System/Threading/ExecutionContext.cs index 9f5b9cd..ba855b4 100644 --- a/src/libraries/System.Private.CoreLib/src/System/Threading/ExecutionContext.cs +++ b/src/libraries/System.Private.CoreLib/src/System/Threading/ExecutionContext.cs @@ -557,7 +557,7 @@ namespace System.Threading } } - public struct AsyncFlowControl : IDisposable + public struct AsyncFlowControl : IEquatable, IDisposable { private Thread? _thread; @@ -604,7 +604,7 @@ namespace System.Threading public override bool Equals(object? obj) { - return obj is AsyncFlowControl && Equals((AsyncFlowControl)obj); + return obj is AsyncFlowControl asyncControl && Equals(asyncControl); } public bool Equals(AsyncFlowControl obj) diff --git a/src/libraries/System.Threading/ref/System.Threading.cs b/src/libraries/System.Threading/ref/System.Threading.cs index db8ef2c..0ec6666 100644 --- a/src/libraries/System.Threading/ref/System.Threading.cs +++ b/src/libraries/System.Threading/ref/System.Threading.cs @@ -18,7 +18,7 @@ namespace System.Threading public System.Threading.Mutex? Mutex { get { throw null; } } public int MutexIndex { get { throw null; } } } - public partial struct AsyncFlowControl : System.IDisposable + public partial struct AsyncFlowControl : System.IEquatable, System.IDisposable { private object _dummy; private int _dummyPrimitive; -- 2.7.4