From 1f4652516a385aeeeea1558738efa0863f63c9fc Mon Sep 17 00:00:00 2001 From: Sean Hall Date: Fri, 5 Mar 2021 17:38:14 -0600 Subject: Fix harvesting providers from MSI packages. --- .../Bundles/ProcessMsiPackageCommand.cs | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) (limited to 'src/WixToolset.Core.Burn') diff --git a/src/WixToolset.Core.Burn/Bundles/ProcessMsiPackageCommand.cs b/src/WixToolset.Core.Burn/Bundles/ProcessMsiPackageCommand.cs index b598af96..5ba1ad07 100644 --- a/src/WixToolset.Core.Burn/Bundles/ProcessMsiPackageCommand.cs +++ b/src/WixToolset.Core.Burn/Bundles/ProcessMsiPackageCommand.cs @@ -512,7 +512,7 @@ namespace WixToolset.Core.Burn.Bundles { if (db.Tables.Contains("WixDependencyProvider")) { - var query = "SELECT `ProviderKey`, `Version`, `DisplayName`, `Attributes` FROM `WixDependencyProvider`"; + var query = "SELECT `WixDependencyProvider`, `ProviderKey`, `Version`, `DisplayName`, `Attributes` FROM `WixDependencyProvider`"; using (var view = db.OpenView(query)) { @@ -526,14 +526,16 @@ namespace WixToolset.Core.Burn.Bundles break; } + var id = new Identifier(AccessModifier.Section, Common.GenerateIdentifier("dep", msiPackage.Id.Id, record.GetString(1))); + // Import the provider key and attributes. - this.Section.AddSymbol(new ProvidesDependencySymbol(msiPackage.SourceLineNumbers) + this.Section.AddSymbol(new ProvidesDependencySymbol(msiPackage.SourceLineNumbers, id) { PackageRef = msiPackage.Id.Id, - Key = record.GetString(1), - Version = record.GetString(2) ?? msiPackage.ProductVersion, - DisplayName = record.GetString(3) ?? this.Facade.PackageSymbol.DisplayName, - Attributes = record.GetInteger(4), + Key = record.GetString(2), + Version = record.GetString(3) ?? msiPackage.ProductVersion, + DisplayName = record.GetString(4) ?? this.Facade.PackageSymbol.DisplayName, + Attributes = record.GetInteger(5), Imported = true }); } -- cgit v1.2.3-55-g6feb