From 0ebe4dbb66527dff9166cf03fd93152957f69a6b Mon Sep 17 00:00:00 2001
From: sator-imaging <16752340+sator-imaging@users.noreply.github.com>
Date: Mon, 8 Jul 2024 20:22:10 +0900
Subject: [PATCH] fix: reset async state of continuation in Reset()
---
.../Threading/Tasks/Sources/ManualResetValueTaskSourceCore.cs | 1 +
.../Threading/Tasks/Sources/ManualResetValueTaskSourceCore.cs | 1 +
2 files changed, 2 insertions(+)
diff --git a/src/libraries/Microsoft.Bcl.AsyncInterfaces/src/System/Threading/Tasks/Sources/ManualResetValueTaskSourceCore.cs b/src/libraries/Microsoft.Bcl.AsyncInterfaces/src/System/Threading/Tasks/Sources/ManualResetValueTaskSourceCore.cs
index 8bcc9cb17b79b1..42564333b894d7 100644
--- a/src/libraries/Microsoft.Bcl.AsyncInterfaces/src/System/Threading/Tasks/Sources/ManualResetValueTaskSourceCore.cs
+++ b/src/libraries/Microsoft.Bcl.AsyncInterfaces/src/System/Threading/Tasks/Sources/ManualResetValueTaskSourceCore.cs
@@ -61,6 +61,7 @@ public void Reset()
_capturedContext = null;
_continuation = null;
_continuationState = null;
+ RunContinuationsAsynchronously = false;
}
/// Completes with a successful result.
diff --git a/src/libraries/System.Private.CoreLib/src/System/Threading/Tasks/Sources/ManualResetValueTaskSourceCore.cs b/src/libraries/System.Private.CoreLib/src/System/Threading/Tasks/Sources/ManualResetValueTaskSourceCore.cs
index c29c5e759f2c1d..d6b0451df8ff42 100644
--- a/src/libraries/System.Private.CoreLib/src/System/Threading/Tasks/Sources/ManualResetValueTaskSourceCore.cs
+++ b/src/libraries/System.Private.CoreLib/src/System/Threading/Tasks/Sources/ManualResetValueTaskSourceCore.cs
@@ -58,6 +58,7 @@ public void Reset()
_error = null;
_result = default;
_completed = false;
+ _runContinuationsAsynchronously = false;
}
/// Completes with a successful result.