From e8a351a52318e09c0d0c41108fdfd2648d982ab8 Mon Sep 17 00:00:00 2001 From: Maggie Kimani Date: Mon, 7 Mar 2022 12:30:57 +0300 Subject: [PATCH] Use await keyword in our asynchronous operation to prevent blocking on it synchronously by using task.GetAwaiter().GetResult thus leading to deadlock --- src/Microsoft.OpenApi.Hidi/OpenApiService.cs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/Microsoft.OpenApi.Hidi/OpenApiService.cs b/src/Microsoft.OpenApi.Hidi/OpenApiService.cs index 1f86e3c06..90cbe1b68 100644 --- a/src/Microsoft.OpenApi.Hidi/OpenApiService.cs +++ b/src/Microsoft.OpenApi.Hidi/OpenApiService.cs @@ -101,12 +101,12 @@ string filterbycollection // Parsing OpenAPI file stopwatch.Start(); logger.LogTrace("Parsing OpenApi file"); - var result = new OpenApiStreamReader(new OpenApiReaderSettings + var result = await new OpenApiStreamReader(new OpenApiReaderSettings { ReferenceResolution = resolveexternal ? ReferenceResolutionSetting.ResolveAllReferences : ReferenceResolutionSetting.ResolveLocalReferences, RuleSet = ValidationRuleSet.GetDefaultRuleSet() } - ).ReadAsync(stream).GetAwaiter().GetResult(); + ).ReadAsync(stream); document = result.OpenApiDocument; stopwatch.Stop();