Fix heat not using passed in extensions
Fixes: wixtoolset/issues#6564
Hank McCord committed
Aug 29, 2021 at 14:06 UTC
48e039f95bf1e725d74f2361e4a0bc60154b9c93
1 file changed
+9
-1
src/wix/heat/Program.cs
+9
-1
@@ -13,6 +13,7 @@ namespace WixToolset.Tools.Heat
13
using WixToolset.Extensibility.Data;
14
using WixToolset.Extensibility.Services;
15
using WixToolset.Harvesters;
16
+ using WixToolset.Harvesters.Extensibility;
17
using WixToolset.Tools.Core;
18
19
/// <summary>
@@ -70,7 +71,14 @@ namespace WixToolset.Tools.Heat
71
var arguments = serviceProvider.GetService<ICommandLineArguments>();
72
arguments.Populate(args);
73
73
- var commandLine = HeatCommandLineFactory.CreateCommandLine(serviceProvider);
74
+ var extensionManager = serviceProvider.GetService<IExtensionManager>();
75
+ foreach (var extension in arguments.Extensions)
76
+ {
77
+ extensionManager.Load(extension);
78
+ }
79
+ var heatExtensions = extensionManager.GetServices<IHeatExtension>();
80
+
81
+ var commandLine = HeatCommandLineFactory.CreateCommandLine(serviceProvider, heatExtensions);
82
var command = commandLine.ParseStandardCommandLine(arguments);
83
return command?.ExecuteAsync(CancellationToken.None) ?? Task.FromResult(1);
84
}