From 73346b01d1b78f89e7225a80304e010379ec1dd6 Mon Sep 17 00:00:00 2001 From: Matt Gibson Date: Thu, 25 Feb 2021 07:00:28 -0600 Subject: [PATCH] Add factory to IGlobalSettings DI singleton (#1163) It turns out Singleton DI of interfaces does not use the specified instance's Singleton, but just creates its own. This fixes the bug where classes expecting an IGlobalSettings were given an empty GlobaSettings instance --- src/Core/Utilities/ServiceCollectionExtensions.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Core/Utilities/ServiceCollectionExtensions.cs b/src/Core/Utilities/ServiceCollectionExtensions.cs index 04511e248c..4d86764f23 100644 --- a/src/Core/Utilities/ServiceCollectionExtensions.cs +++ b/src/Core/Utilities/ServiceCollectionExtensions.cs @@ -423,7 +423,7 @@ namespace Bit.Core.Utilities var globalSettings = new GlobalSettings(); ConfigurationBinder.Bind(configuration.GetSection("GlobalSettings"), globalSettings); services.AddSingleton(s => globalSettings); - services.AddSingleton(); + services.AddSingleton(s => globalSettings); return globalSettings; }