aboutsummaryrefslogtreecommitdiff
path: root/src/WixToolset.Core.WindowsInstaller/Bind/AttachPatchTransformsCommand.cs
diff options
context:
space:
mode:
authorRob Mensching <rob@firegiant.com>2021-03-26 12:59:03 -0700
committerRob Mensching <rob@firegiant.com>2021-04-02 14:58:00 -0700
commit9cca339473d77c7036035f949239f5231c325968 (patch)
tree342399ad52d1eb8102be17c71a12242c566fca25 /src/WixToolset.Core.WindowsInstaller/Bind/AttachPatchTransformsCommand.cs
parent67bcf306aa020c5480b6dd28eab5db3d49264585 (diff)
downloadwix-9cca339473d77c7036035f949239f5231c325968.tar.gz
wix-9cca339473d77c7036035f949239f5231c325968.tar.bz2
wix-9cca339473d77c7036035f949239f5231c325968.zip
Integrate the IntermediateSection and IntermediateSymbol mutable changes
Diffstat (limited to 'src/WixToolset.Core.WindowsInstaller/Bind/AttachPatchTransformsCommand.cs')
-rw-r--r--src/WixToolset.Core.WindowsInstaller/Bind/AttachPatchTransformsCommand.cs27
1 files changed, 12 insertions, 15 deletions
diff --git a/src/WixToolset.Core.WindowsInstaller/Bind/AttachPatchTransformsCommand.cs b/src/WixToolset.Core.WindowsInstaller/Bind/AttachPatchTransformsCommand.cs
index 6d802d98..5f8df92c 100644
--- a/src/WixToolset.Core.WindowsInstaller/Bind/AttachPatchTransformsCommand.cs
+++ b/src/WixToolset.Core.WindowsInstaller/Bind/AttachPatchTransformsCommand.cs
@@ -241,23 +241,20 @@ namespace WixToolset.Core.WindowsInstaller.Bind
241 241
242 foreach (var section in this.Intermediate.Sections) 242 foreach (var section in this.Intermediate.Sections)
243 { 243 {
244 for (var i = section.Symbols.Count - 1; i >= 0; i--) 244 // Remove all summary information from the symbols and remember those that
245 // are not calculated or reserved.
246 foreach (var patchSummaryInfo in section.Symbols.OfType<SummaryInformationSymbol>().ToList())
245 { 247 {
246 if (section.Symbols[i] is SummaryInformationSymbol patchSummaryInfo) 248 section.RemoveSymbol(patchSummaryInfo);
249
250 if (patchSummaryInfo.PropertyId != SummaryInformationType.PatchProductCodes &&
251 patchSummaryInfo.PropertyId != SummaryInformationType.PatchCode &&
252 patchSummaryInfo.PropertyId != SummaryInformationType.PatchInstallerRequirement &&
253 patchSummaryInfo.PropertyId != SummaryInformationType.Reserved11 &&
254 patchSummaryInfo.PropertyId != SummaryInformationType.Reserved14 &&
255 patchSummaryInfo.PropertyId != SummaryInformationType.Reserved16)
247 { 256 {
248 // Remove all summary information from the symbols and remember those that 257 result.Add(patchSummaryInfo.PropertyId, patchSummaryInfo);
249 // are not calculated or reserved.
250 section.Symbols.RemoveAt(i);
251
252 if (patchSummaryInfo.PropertyId != SummaryInformationType.PatchProductCodes &&
253 patchSummaryInfo.PropertyId != SummaryInformationType.PatchCode &&
254 patchSummaryInfo.PropertyId != SummaryInformationType.PatchInstallerRequirement &&
255 patchSummaryInfo.PropertyId != SummaryInformationType.Reserved11 &&
256 patchSummaryInfo.PropertyId != SummaryInformationType.Reserved14 &&
257 patchSummaryInfo.PropertyId != SummaryInformationType.Reserved16)
258 {
259 result.Add(patchSummaryInfo.PropertyId, patchSummaryInfo);
260 }
261 } 258 }
262 } 259 }
263 } 260 }