aboutsummaryrefslogtreecommitdiff
path: root/src/WixToolset.Core/Linker.cs
diff options
context:
space:
mode:
Diffstat (limited to 'src/WixToolset.Core/Linker.cs')
-rw-r--r--src/WixToolset.Core/Linker.cs18
1 files changed, 9 insertions, 9 deletions
diff --git a/src/WixToolset.Core/Linker.cs b/src/WixToolset.Core/Linker.cs
index 7b381347..fb1b2488 100644
--- a/src/WixToolset.Core/Linker.cs
+++ b/src/WixToolset.Core/Linker.cs
@@ -168,7 +168,7 @@ namespace WixToolset.Core
168 // references that particpate in groups. 168 // references that particpate in groups.
169 sections = resolve.ResolvedSections.ToList(); 169 sections = resolve.ResolvedSections.ToList();
170 170
171 // TODO: consider filtering "localizations" down to only those localizations from 171 // TODO: consider filtering "localizations" down to only those localizations from
172 // intermediates in the sections. 172 // intermediates in the sections.
173 173
174 this.FlattenSectionsComplexReferences(sections); 174 this.FlattenSectionsComplexReferences(sections);
@@ -261,8 +261,8 @@ namespace WixToolset.Core
261 if (WindowsInstallerStandard.IsStandardDirectory(directory)) 261 if (WindowsInstallerStandard.IsStandardDirectory(directory))
262 { 262 {
263 // if the directory table contains references to standard windows folders 263 // if the directory table contains references to standard windows folders
264 // mergemod.dll will add customactions to set the MSM directory to 264 // mergemod.dll will add customactions to set the MSM directory to
265 // the same directory as the standard windows folder and will add references to 265 // the same directory as the standard windows folder and will add references to
266 // custom action to all the standard sequence tables. A problem will occur 266 // custom action to all the standard sequence tables. A problem will occur
267 // if the MSI does not have these tables as mergemod.dll does not add these 267 // if the MSI does not have these tables as mergemod.dll does not add these
268 // tables to the MSI if absent. This code adds the tables in case mergemod.dll 268 // tables to the MSI if absent. This code adds the tables in case mergemod.dll
@@ -982,7 +982,7 @@ namespace WixToolset.Core
982 } 982 }
983 983
984 // If the child of the complex reference is another group, then in Step 2 984 // If the child of the complex reference is another group, then in Step 2
985 // we're going to have to process this complex reference again to copy 985 // we're going to have to process this complex reference again to copy
986 // the child group's references into the parent group. 986 // the child group's references into the parent group.
987 if ((ComplexReferenceChildType.ComponentGroup == wixComplexReferenceRow.ChildType) || 987 if ((ComplexReferenceChildType.ComponentGroup == wixComplexReferenceRow.ChildType) ||
988 (ComplexReferenceChildType.FeatureGroup == wixComplexReferenceRow.ChildType) || 988 (ComplexReferenceChildType.FeatureGroup == wixComplexReferenceRow.ChildType) ||
@@ -1081,14 +1081,14 @@ namespace WixToolset.Core
1081 var childTypeAndId = this.CombineTypeAndId(wixComplexReferenceRow.ChildType, wixComplexReferenceRow.Child); 1081 var childTypeAndId = this.CombineTypeAndId(wixComplexReferenceRow.ChildType, wixComplexReferenceRow.Child);
1082 if (loopDetector.Contains(childTypeAndId)) 1082 if (loopDetector.Contains(childTypeAndId))
1083 { 1083 {
1084 // Create a comma delimited list of the references that participate in the 1084 // Create a comma delimited list of the references that participate in the
1085 // loop for the error message. Start at the bottom of the stack and work the 1085 // loop for the error message. Start at the bottom of the stack and work the
1086 // way up to present the loop as a directed graph. 1086 // way up to present the loop as a directed graph.
1087 var loop = String.Join(" -> ", loopDetector); 1087 var loop = String.Join(" -> ", loopDetector);
1088 1088
1089 this.Messaging.Write(ErrorMessages.ReferenceLoopDetected(wixComplexReferenceRow?.SourceLineNumbers, loop)); 1089 this.Messaging.Write(ErrorMessages.ReferenceLoopDetected(wixComplexReferenceRow?.SourceLineNumbers, loop));
1090 1090
1091 // Cleanup the parentGroupsNeedingProcessing and the loopDetector just like the 1091 // Cleanup the parentGroupsNeedingProcessing and the loopDetector just like the
1092 // exit of this method does at the end because we are exiting early. 1092 // exit of this method does at the end because we are exiting early.
1093 loopDetector.Pop(); 1093 loopDetector.Pop();
1094 parentGroupsNeedingProcessing.Remove(parentTypeAndId); 1094 parentGroupsNeedingProcessing.Remove(parentTypeAndId);
@@ -1097,7 +1097,7 @@ namespace WixToolset.Core
1097 } 1097 }
1098 1098
1099 // Check to see if the child group still needs to be processed. If so, 1099 // Check to see if the child group still needs to be processed. If so,
1100 // go do that so that we'll get all of that children's (and children's 1100 // go do that so that we'll get all of that children's (and children's
1101 // children) complex references correctly merged into our parent group. 1101 // children) complex references correctly merged into our parent group.
1102 if (parentGroupsNeedingProcessing.ContainsKey(childTypeAndId)) 1102 if (parentGroupsNeedingProcessing.ContainsKey(childTypeAndId))
1103 { 1103 {
@@ -1107,7 +1107,7 @@ namespace WixToolset.Core
1107 // If the child is a parent to anything (i.e. the parent has grandchildren) 1107 // If the child is a parent to anything (i.e. the parent has grandchildren)
1108 // clone each of the children's complex references, repoint them to the parent 1108 // clone each of the children's complex references, repoint them to the parent
1109 // complex reference (because we're moving references up the tree), and finally 1109 // complex reference (because we're moving references up the tree), and finally
1110 // add the cloned child's complex reference to the list of complex references 1110 // add the cloned child's complex reference to the list of complex references
1111 // that we'll eventually add to the parent group. 1111 // that we'll eventually add to the parent group.
1112 if (parentGroups.TryGetValue(childTypeAndId, out var referencesToChild)) 1112 if (parentGroups.TryGetValue(childTypeAndId, out var referencesToChild))
1113 { 1113 {
@@ -1148,7 +1148,7 @@ namespace WixToolset.Core
1148 } 1148 }
1149 else if (i > 0) 1149 else if (i > 0)
1150 { 1150 {
1151 // Since the list is already sorted, we can find duplicates by simply 1151 // Since the list is already sorted, we can find duplicates by simply
1152 // looking at the next sibling in the list and tossing out one if they 1152 // looking at the next sibling in the list and tossing out one if they
1153 // match. 1153 // match.
1154 var crefCompare = referencesToParent[i - 1]; 1154 var crefCompare = referencesToParent[i - 1];