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();