From 1c6eebf875d315b1d1b92dc555d49a61b8220428 Mon Sep 17 00:00:00 2001 From: RogueException Date: Sat, 22 Apr 2017 08:04:33 -0300 Subject: [PATCH] Ensure command completes before cleaning up --- src/Discord.Net.Commands/Builders/ModuleClassBuilder.cs | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/Discord.Net.Commands/Builders/ModuleClassBuilder.cs b/src/Discord.Net.Commands/Builders/ModuleClassBuilder.cs index 4e8ef2664..fb93cc5ec 100644 --- a/src/Discord.Net.Commands/Builders/ModuleClassBuilder.cs +++ b/src/Discord.Net.Commands/Builders/ModuleClassBuilder.cs @@ -160,14 +160,15 @@ namespace Discord.Commands var createInstance = ReflectionUtils.CreateBuilder(typeInfo, service); - builder.Callback = (ctx, args, map) => + builder.Callback = async (ctx, args, map) => { var instance = createInstance(map); instance.SetContext(ctx); try { instance.BeforeExecute(); - return method.Invoke(instance, args) as Task ?? Task.Delay(0); + var task = method.Invoke(instance, args) as Task ?? Task.Delay(0); + await task.ConfigureAwait(false); } finally {