aboutsummaryrefslogtreecommitdiff
path: root/src/WixToolset.Core.WindowsInstaller
diff options
context:
space:
mode:
Diffstat (limited to 'src/WixToolset.Core.WindowsInstaller')
-rw-r--r--src/WixToolset.Core.WindowsInstaller/Unbinder.cs10
-rw-r--r--src/WixToolset.Core.WindowsInstaller/WixToolsetCoreServiceProviderExtensions.cs1
2 files changed, 10 insertions, 1 deletions
diff --git a/src/WixToolset.Core.WindowsInstaller/Unbinder.cs b/src/WixToolset.Core.WindowsInstaller/Unbinder.cs
index a2f02269..99caaba9 100644
--- a/src/WixToolset.Core.WindowsInstaller/Unbinder.cs
+++ b/src/WixToolset.Core.WindowsInstaller/Unbinder.cs
@@ -11,8 +11,16 @@ namespace WixToolset.Core
11 /// <summary> 11 /// <summary>
12 /// Unbinder core of the WiX toolset. 12 /// Unbinder core of the WiX toolset.
13 /// </summary> 13 /// </summary>
14 internal sealed class Unbinder 14 internal sealed class Unbinder : IUnbinder
15 { 15 {
16 public Unbinder(IWixToolsetServiceProvider serviceProvider)
17 {
18 this.ServiceProvider = serviceProvider;
19
20 var extensionManager = this.ServiceProvider.GetService<IExtensionManager>();
21 this.BackendFactories = extensionManager.GetServices<IBackendFactory>();
22 }
23
16 public IEnumerable<IBackendFactory> BackendFactories { get; } 24 public IEnumerable<IBackendFactory> BackendFactories { get; }
17 25
18 /// <summary> 26 /// <summary>
diff --git a/src/WixToolset.Core.WindowsInstaller/WixToolsetCoreServiceProviderExtensions.cs b/src/WixToolset.Core.WindowsInstaller/WixToolsetCoreServiceProviderExtensions.cs
index c69f1af1..e013cefb 100644
--- a/src/WixToolset.Core.WindowsInstaller/WixToolsetCoreServiceProviderExtensions.cs
+++ b/src/WixToolset.Core.WindowsInstaller/WixToolsetCoreServiceProviderExtensions.cs
@@ -31,6 +31,7 @@ namespace WixToolset.Core.WindowsInstaller
31 { 31 {
32 // Singletons. 32 // Singletons.
33 coreProvider.AddService((provider, singletons) => AddSingleton<IWindowsInstallerBackendHelper>(singletons, new WindowsInstallerBackendHelper())); 33 coreProvider.AddService((provider, singletons) => AddSingleton<IWindowsInstallerBackendHelper>(singletons, new WindowsInstallerBackendHelper()));
34 coreProvider.AddService<IUnbinder>((provider, singletons) => new Unbinder(provider));
34 } 35 }
35 36
36 private static T AddSingleton<T>(Dictionary<Type, object> singletons, T service) where T : class 37 private static T AddSingleton<T>(Dictionary<Type, object> singletons, T service) where T : class