From e8030ca17ff96a794a3fecd66bb01b81581a5451 Mon Sep 17 00:00:00 2001 From: Rob Mensching Date: Fri, 22 May 2020 14:47:36 -0700 Subject: Fix naming of file in a merge module's cabinet The file was stored in the merge module's cabinet with plain FileId, without the modularization GUID. This change fixes the cabinet builder so that it adds the modularization GUID when creating the cabinet. --- .../Bind/ModularizeCommand.cs | 19 +++++++++---------- 1 file changed, 9 insertions(+), 10 deletions(-) (limited to 'src/WixToolset.Core.WindowsInstaller/Bind/ModularizeCommand.cs') diff --git a/src/WixToolset.Core.WindowsInstaller/Bind/ModularizeCommand.cs b/src/WixToolset.Core.WindowsInstaller/Bind/ModularizeCommand.cs index 64257ccf..8b459d69 100644 --- a/src/WixToolset.Core.WindowsInstaller/Bind/ModularizeCommand.cs +++ b/src/WixToolset.Core.WindowsInstaller/Bind/ModularizeCommand.cs @@ -15,10 +15,10 @@ namespace WixToolset.Core.WindowsInstaller.Bind internal class ModularizeCommand { - public ModularizeCommand(WindowsInstallerData output, string modularizationGuid, IEnumerable suppressTuples) + public ModularizeCommand(WindowsInstallerData output, string modularizationSuffix, IEnumerable suppressTuples) { this.Output = output; - this.ModularizationGuid = modularizationGuid; + this.ModularizationSuffix = modularizationSuffix; // Gather all the unique suppress modularization identifiers. this.SuppressModularizationIdentifiers = new HashSet(suppressTuples.Select(s => s.Id.Id)); @@ -26,7 +26,7 @@ namespace WixToolset.Core.WindowsInstaller.Bind private WindowsInstallerData Output { get; } - private string ModularizationGuid { get; } + private string ModularizationSuffix { get; } private HashSet SuppressModularizationIdentifiers { get; } @@ -129,7 +129,7 @@ namespace WixToolset.Core.WindowsInstaller.Bind // if we're not supposed to suppress modularization of this identifier if (!this.SuppressModularizationIdentifiers.Contains(fieldData)) { - fieldData = String.Concat(fieldData, ".", this.ModularizationGuid); + fieldData = String.Concat(fieldData, this.ModularizationSuffix); } break; @@ -178,8 +178,7 @@ namespace WixToolset.Core.WindowsInstaller.Bind var identifier = group.Value; if (!WindowsInstallerStandard.IsStandardProperty(identifier) && !this.SuppressModularizationIdentifiers.Contains(identifier)) { - sb.Insert(group.Index + group.Length, '.'); - sb.Insert(group.Index + group.Length + 1, this.ModularizationGuid); + sb.Insert(group.Index + group.Length, this.ModularizationSuffix); } } } @@ -193,7 +192,7 @@ namespace WixToolset.Core.WindowsInstaller.Bind if (!this.SuppressModularizationIdentifiers.Contains(fieldData) && 0 < fieldData.Length && !Char.IsDigit(fieldData, 0)) { - fieldData = String.Concat(fieldData, ".", this.ModularizationGuid); + fieldData = String.Concat(fieldData, this.ModularizationSuffix); } break; @@ -203,11 +202,11 @@ namespace WixToolset.Core.WindowsInstaller.Bind var start = fieldData.LastIndexOf(".", StringComparison.Ordinal); if (-1 == start) { - fieldData = String.Concat(fieldData, ".", this.ModularizationGuid); + fieldData = String.Concat(fieldData, this.ModularizationSuffix); } else { - fieldData = String.Concat(fieldData.Substring(0, start), ".", this.ModularizationGuid, fieldData.Substring(start)); + fieldData = String.Concat(fieldData.Substring(0, start), this.ModularizationSuffix, fieldData.Substring(start)); } } break; @@ -218,7 +217,7 @@ namespace WixToolset.Core.WindowsInstaller.Bind { if (!String.IsNullOrEmpty(keys[i])) { - keys[i] = String.Concat(keys[i], ".", this.ModularizationGuid); + keys[i] = String.Concat(keys[i], this.ModularizationSuffix); } } -- cgit v1.2.3-55-g6feb