From 1be22c8ff43ed81be02799641e4cd7dcf74587c4 Mon Sep 17 00:00:00 2001 From: David Fowler Date: Fri, 5 Apr 2013 19:58:26 -0700 Subject: [PATCH] Noop if AsyncResult set twice. --- src/Microsoft.AspNet.SignalR.Hosting.Memory/AsyncResult.cs | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/Microsoft.AspNet.SignalR.Hosting.Memory/AsyncResult.cs b/src/Microsoft.AspNet.SignalR.Hosting.Memory/AsyncResult.cs index cff37e598e..a35a797639 100644 --- a/src/Microsoft.AspNet.SignalR.Hosting.Memory/AsyncResult.cs +++ b/src/Microsoft.AspNet.SignalR.Hosting.Memory/AsyncResult.cs @@ -47,9 +47,12 @@ public AsyncResult(AsyncCallback asyncCallback, Object state) completedSynchronously ? c_StateCompletedSynchronously : c_StateCompletedAsynchronously); + if (prevState != c_StatePending) - throw new InvalidOperationException( - "You can set a result only once"); + { + // Noop + return; + } // If the event exists, set it if (m_AsyncWaitHandle != null) m_AsyncWaitHandle.Set();