diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/WixToolset.Core.Burn/Bind/BindBundleCommand.cs | 35 | ||||
| -rw-r--r-- | src/test/WixToolsetTest.CoreIntegration/BindVariablesFixture.cs | 2 |
2 files changed, 18 insertions, 19 deletions
diff --git a/src/WixToolset.Core.Burn/Bind/BindBundleCommand.cs b/src/WixToolset.Core.Burn/Bind/BindBundleCommand.cs index fd847e05..5ddb6be1 100644 --- a/src/WixToolset.Core.Burn/Bind/BindBundleCommand.cs +++ b/src/WixToolset.Core.Burn/Bind/BindBundleCommand.cs | |||
| @@ -208,17 +208,6 @@ namespace WixToolset.Core.Burn | |||
| 208 | { | 208 | { |
| 209 | var command = new ProcessMsiPackageCommand(this.ServiceProvider, this.BackendExtensions, section, facade, packagesPayloads[facade.PackageId]); | 209 | var command = new ProcessMsiPackageCommand(this.ServiceProvider, this.BackendExtensions, section, facade, packagesPayloads[facade.PackageId]); |
| 210 | command.Execute(); | 210 | command.Execute(); |
| 211 | |||
| 212 | if (null != variableCache) | ||
| 213 | { | ||
| 214 | var msiPackage = (WixBundleMsiPackageSymbol)facade.SpecificPackageSymbol; | ||
| 215 | variableCache.Add(String.Concat("packageLanguage.", facade.PackageId), msiPackage.ProductLanguage.ToString()); | ||
| 216 | |||
| 217 | if (null != msiPackage.Manufacturer) | ||
| 218 | { | ||
| 219 | variableCache.Add(String.Concat("packageManufacturer.", facade.PackageId), msiPackage.Manufacturer); | ||
| 220 | } | ||
| 221 | } | ||
| 222 | } | 211 | } |
| 223 | break; | 212 | break; |
| 224 | 213 | ||
| @@ -239,7 +228,7 @@ namespace WixToolset.Core.Burn | |||
| 239 | 228 | ||
| 240 | if (null != variableCache) | 229 | if (null != variableCache) |
| 241 | { | 230 | { |
| 242 | BindBundleCommand.PopulatePackageVariableCache(facade.PackageSymbol, variableCache); | 231 | BindBundleCommand.PopulatePackageVariableCache(facade, variableCache); |
| 243 | } | 232 | } |
| 244 | } | 233 | } |
| 245 | 234 | ||
| @@ -534,17 +523,27 @@ namespace WixToolset.Core.Burn | |||
| 534 | /// <summary> | 523 | /// <summary> |
| 535 | /// Populates the variable cache with specific package properties. | 524 | /// Populates the variable cache with specific package properties. |
| 536 | /// </summary> | 525 | /// </summary> |
| 537 | /// <param name="package">The package with properties to cache.</param> | 526 | /// <param name="facade">The package facade with properties to cache.</param> |
| 538 | /// <param name="variableCache">The property cache.</param> | 527 | /// <param name="variableCache">The property cache.</param> |
| 539 | private static void PopulatePackageVariableCache(WixBundlePackageSymbol package, IDictionary<string, string> variableCache) | 528 | private static void PopulatePackageVariableCache(PackageFacade facade, IDictionary<string, string> variableCache) |
| 540 | { | 529 | { |
| 530 | var package = facade.PackageSymbol; | ||
| 541 | var id = package.Id.Id; | 531 | var id = package.Id.Id; |
| 542 | 532 | ||
| 543 | variableCache.Add(String.Concat("packageDescription.", id), package.Description); | 533 | variableCache.Add(String.Concat("packageDescription.", id), package.Description ?? String.Empty); |
| 544 | //variableCache.Add(String.Concat("packageLanguage.", id), package.Language); | 534 | variableCache.Add(String.Concat("packageName.", id), package.DisplayName ?? String.Empty); |
| 545 | //variableCache.Add(String.Concat("packageManufacturer.", id), package.Manufacturer); | ||
| 546 | variableCache.Add(String.Concat("packageName.", id), package.DisplayName); | ||
| 547 | variableCache.Add(String.Concat("packageVersion.", id), package.Version); | 535 | variableCache.Add(String.Concat("packageVersion.", id), package.Version); |
| 536 | |||
| 537 | if (facade.SpecificPackageSymbol is WixBundleMsiPackageSymbol msiPackage) | ||
| 538 | { | ||
| 539 | variableCache.Add(String.Concat("packageLanguage.", id), msiPackage.ProductLanguage.ToString()); | ||
| 540 | variableCache.Add(String.Concat("packageManufacturer.", id), msiPackage.Manufacturer ?? String.Empty); | ||
| 541 | } | ||
| 542 | else | ||
| 543 | { | ||
| 544 | variableCache.Add(String.Concat("packageLanguage.", id), String.Empty); | ||
| 545 | variableCache.Add(String.Concat("packageManufacturer.", id), String.Empty); | ||
| 546 | } | ||
| 548 | } | 547 | } |
| 549 | 548 | ||
| 550 | private void ResolveBundleInstallScope(IntermediateSection section, WixBundleSymbol bundleSymbol, IEnumerable<PackageFacade> facades) | 549 | private void ResolveBundleInstallScope(IntermediateSection section, WixBundleSymbol bundleSymbol, IEnumerable<PackageFacade> facades) |
diff --git a/src/test/WixToolsetTest.CoreIntegration/BindVariablesFixture.cs b/src/test/WixToolsetTest.CoreIntegration/BindVariablesFixture.cs index 44f9c802..39e6b4aa 100644 --- a/src/test/WixToolsetTest.CoreIntegration/BindVariablesFixture.cs +++ b/src/test/WixToolsetTest.CoreIntegration/BindVariablesFixture.cs | |||
| @@ -10,7 +10,7 @@ namespace WixToolsetTest.CoreIntegration | |||
| 10 | 10 | ||
| 11 | public class BindVariablesFixture | 11 | public class BindVariablesFixture |
| 12 | { | 12 | { |
| 13 | [Fact(Skip = "Test demonstrates failure")] | 13 | [Fact] |
| 14 | public void CanBuildBundleWithPackageBindVariables() | 14 | public void CanBuildBundleWithPackageBindVariables() |
| 15 | { | 15 | { |
| 16 | var folder = TestData.Get(@"TestData"); | 16 | var folder = TestData.Get(@"TestData"); |
