From 52f4ea0a7d85c2c83c7d6c771a3bdc6dd74fdbc0 Mon Sep 17 00:00:00 2001 From: Rob Mensching Date: Tue, 23 Feb 2021 09:23:01 -0800 Subject: Integrate the latest Extensibility changes --- src/WixToolset.Core.Burn/Bind/BindBundleCommand.cs | 21 +++++++++++++-------- 1 file changed, 13 insertions(+), 8 deletions(-) (limited to 'src/WixToolset.Core.Burn/Bind/BindBundleCommand.cs') diff --git a/src/WixToolset.Core.Burn/Bind/BindBundleCommand.cs b/src/WixToolset.Core.Burn/Bind/BindBundleCommand.cs index dea1f47d..93620e1b 100644 --- a/src/WixToolset.Core.Burn/Bind/BindBundleCommand.cs +++ b/src/WixToolset.Core.Burn/Bind/BindBundleCommand.cs @@ -23,7 +23,7 @@ namespace WixToolset.Core.Burn /// internal class BindBundleCommand { - public BindBundleCommand(IBindContext context, IEnumerable backedExtensions) + public BindBundleCommand(IBindContext context, IEnumerable backedExtensions) { this.ServiceProvider = context.ServiceProvider; @@ -58,7 +58,7 @@ namespace WixToolset.Core.Burn public IEnumerable ExpectedEmbeddedFiles { get; } - private IEnumerable BackendExtensions { get; } + private IEnumerable BackendExtensions { get; } private Intermediate Output { get; } @@ -380,16 +380,21 @@ namespace WixToolset.Core.Burn // Update the bundle per-machine/per-user scope based on the chained packages. this.ResolveBundleInstallScope(section, bundleSymbol, orderedFacades); - // Generate data for all manifests. + // Give the extension one last hook before generating the output files. + foreach (var extension in this.BackendExtensions) { - var command = new GenerateManifestDataFromIRCommand(this.Messaging, section, this.BackendExtensions, this.InternalBurnBackendHelper, extensionSearchSymbolsById); - command.Execute(); + extension.SymbolsFinalized(section); } - // Give the extension one last hook before generating the output files. - foreach (var extension in this.BackendExtensions) + if (this.Messaging.EncounteredError) { - extension.BundleFinalize(); + return; + } + + // Generate data for all manifests. + { + var command = new GenerateManifestDataFromIRCommand(this.Messaging, section, this.BackendExtensions, this.InternalBurnBackendHelper, extensionSearchSymbolsById); + command.Execute(); } if (this.Messaging.EncounteredError) -- cgit v1.2.3-55-g6feb