From 857d4d0a9f30f808a36e62bb9d7b12b9c37e8929 Mon Sep 17 00:00:00 2001 From: Mikayla Hutchinson Date: Mon, 2 Oct 2023 00:55:04 -0400 Subject: [PATCH] Use async main instead of sync-over-async --- dotnet-t4/TextTransform.cs | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/dotnet-t4/TextTransform.cs b/dotnet-t4/TextTransform.cs index 5884138..c293677 100644 --- a/dotnet-t4/TextTransform.cs +++ b/dotnet-t4/TextTransform.cs @@ -27,7 +27,10 @@ using System.Linq; using System.Reflection; using System.Text; +using System.Threading.Tasks; + using Microsoft.VisualStudio.TextTemplating; + using Mono.Options; namespace Mono.TextTemplating @@ -36,10 +39,10 @@ sealed class TextTransform { static OptionSet optionSet; - public static int Main (string [] args) + public static async Task Main (string [] args) { try { - return MainInternal (args); + return await MainInternal (args); } catch (Exception e) { Console.Error.WriteLine (e); @@ -56,7 +59,7 @@ public CustomOption (string prototype, string description, int count, Action action (c.OptionValues); } - static int MainInternal (string [] args) + static async Task MainInternal (string [] args) { if (args.Length == 0 && !Console.IsInputRedirected) { ShowHelp (true); @@ -228,7 +231,7 @@ static int MainInternal (string [] args) if (!generator.Errors.HasErrors) { if (preprocessClassName == null) { - (outputFile, outputContent) = generator.ProcessTemplateAsync (pt, inputFile, inputContent, outputFile, settings).Result; + (outputFile, outputContent) = await generator.ProcessTemplateAsync (pt, inputFile, inputContent, outputFile, settings); } else { SplitClassName (preprocessClassName, settings); outputContent = generator.PreprocessTemplate (pt, inputFile, inputContent, settings, out _);