diff --git a/src/Tgstation.Server.Host/Components/Chat/ChatManager.cs b/src/Tgstation.Server.Host/Components/Chat/ChatManager.cs index 400d55e9b7..8124434888 100644 --- a/src/Tgstation.Server.Host/Components/Chat/ChatManager.cs +++ b/src/Tgstation.Server.Host/Components/Chat/ChatManager.cs @@ -413,12 +413,17 @@ namespace Tgstation.Server.Host.Components.Chat AddMessageTask(task); - return (errorMessage, dreamMakerOutput) => AddMessageTask( - Task.WhenAll( + async Task CollateTasks(string errorMessage, string dreamMakerOutput) + { + await task; + await Task.WhenAll( callbacks.Select( x => x( errorMessage, - dreamMakerOutput)))); + dreamMakerOutput))); + } + + return (errorMessage, dreamMakerOutput) => AddMessageTask(CollateTasks(errorMessage, dreamMakerOutput)); } ///