diff options
| author | Sean Hall <r.sean.hall@gmail.com> | 2021-04-24 16:29:26 -0500 |
|---|---|---|
| committer | Sean Hall <r.sean.hall@gmail.com> | 2021-04-25 23:06:35 -0500 |
| commit | 07bee0d033f1b4acb63e3da17764a3855503bce2 (patch) | |
| tree | e16896f1e61f071b8c2637e0e3bb8c8976f8a2f4 /src/WixToolset.Core/Compiler_Bundle.cs | |
| parent | f4709371fa21ca1d0c06e04d1b53c0b10bfafeed (diff) | |
| download | wix-07bee0d033f1b4acb63e3da17764a3855503bce2.tar.gz wix-07bee0d033f1b4acb63e3da17764a3855503bce2.tar.bz2 wix-07bee0d033f1b4acb63e3da17764a3855503bce2.zip | |
Block well known bundle ids in the compiler.
Diffstat (limited to 'src/WixToolset.Core/Compiler_Bundle.cs')
| -rw-r--r-- | src/WixToolset.Core/Compiler_Bundle.cs | 38 |
1 files changed, 31 insertions, 7 deletions
diff --git a/src/WixToolset.Core/Compiler_Bundle.cs b/src/WixToolset.Core/Compiler_Bundle.cs index e09246df..6d2e75f7 100644 --- a/src/WixToolset.Core/Compiler_Bundle.cs +++ b/src/WixToolset.Core/Compiler_Bundle.cs | |||
| @@ -535,6 +535,10 @@ namespace WixToolset.Core | |||
| 535 | { | 535 | { |
| 536 | case "Id": | 536 | case "Id": |
| 537 | id = this.Core.GetAttributeIdentifier(sourceLineNumbers, attrib); | 537 | id = this.Core.GetAttributeIdentifier(sourceLineNumbers, attrib); |
| 538 | if (id?.Id == BurnConstants.BurnUXContainerName || id?.Id == BurnConstants.BurnDefaultAttachedContainerName) | ||
| 539 | { | ||
| 540 | this.Messaging.Write(CompilerErrors.ReservedValue(sourceLineNumbers, node.Name.LocalName, "Id", id.Id)); | ||
| 541 | } | ||
| 538 | break; | 542 | break; |
| 539 | case "DownloadUrl": | 543 | case "DownloadUrl": |
| 540 | downloadUrl = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 544 | downloadUrl = this.Core.GetAttributeValue(sourceLineNumbers, attrib); |
| @@ -1736,27 +1740,27 @@ namespace WixToolset.Core | |||
| 1736 | switch (child.Name.LocalName) | 1740 | switch (child.Name.LocalName) |
| 1737 | { | 1741 | { |
| 1738 | case "MsiPackage": | 1742 | case "MsiPackage": |
| 1739 | previousId = this.ParseMsiPackageElement(child, ComplexReferenceParentType.PackageGroup, "WixChain", previousType, previousId); | 1743 | previousId = this.ParseMsiPackageElement(child, ComplexReferenceParentType.PackageGroup, BurnConstants.BundleChainPackageGroupId, previousType, previousId); |
| 1740 | previousType = ComplexReferenceChildType.Package; | 1744 | previousType = ComplexReferenceChildType.Package; |
| 1741 | break; | 1745 | break; |
| 1742 | case "MspPackage": | 1746 | case "MspPackage": |
| 1743 | previousId = this.ParseMspPackageElement(child, ComplexReferenceParentType.PackageGroup, "WixChain", previousType, previousId); | 1747 | previousId = this.ParseMspPackageElement(child, ComplexReferenceParentType.PackageGroup, BurnConstants.BundleChainPackageGroupId, previousType, previousId); |
| 1744 | previousType = ComplexReferenceChildType.Package; | 1748 | previousType = ComplexReferenceChildType.Package; |
| 1745 | break; | 1749 | break; |
| 1746 | case "MsuPackage": | 1750 | case "MsuPackage": |
| 1747 | previousId = this.ParseMsuPackageElement(child, ComplexReferenceParentType.PackageGroup, "WixChain", previousType, previousId); | 1751 | previousId = this.ParseMsuPackageElement(child, ComplexReferenceParentType.PackageGroup, BurnConstants.BundleChainPackageGroupId, previousType, previousId); |
| 1748 | previousType = ComplexReferenceChildType.Package; | 1752 | previousType = ComplexReferenceChildType.Package; |
| 1749 | break; | 1753 | break; |
| 1750 | case "ExePackage": | 1754 | case "ExePackage": |
| 1751 | previousId = this.ParseExePackageElement(child, ComplexReferenceParentType.PackageGroup, "WixChain", previousType, previousId); | 1755 | previousId = this.ParseExePackageElement(child, ComplexReferenceParentType.PackageGroup, BurnConstants.BundleChainPackageGroupId, previousType, previousId); |
| 1752 | previousType = ComplexReferenceChildType.Package; | 1756 | previousType = ComplexReferenceChildType.Package; |
| 1753 | break; | 1757 | break; |
| 1754 | case "RollbackBoundary": | 1758 | case "RollbackBoundary": |
| 1755 | previousId = this.ParseRollbackBoundaryElement(child, ComplexReferenceParentType.PackageGroup, "WixChain", previousType, previousId); | 1759 | previousId = this.ParseRollbackBoundaryElement(child, ComplexReferenceParentType.PackageGroup, BurnConstants.BundleChainPackageGroupId, previousType, previousId); |
| 1756 | previousType = ComplexReferenceChildType.Package; | 1760 | previousType = ComplexReferenceChildType.Package; |
| 1757 | break; | 1761 | break; |
| 1758 | case "PackageGroupRef": | 1762 | case "PackageGroupRef": |
| 1759 | previousId = this.ParsePackageGroupRefElement(child, ComplexReferenceParentType.PackageGroup, "WixChain", previousType, previousId); | 1763 | previousId = this.ParsePackageGroupRefElement(child, ComplexReferenceParentType.PackageGroup, BurnConstants.BundleChainPackageGroupId, previousType, previousId); |
| 1760 | previousType = ComplexReferenceChildType.PackageGroup; | 1764 | previousType = ComplexReferenceChildType.PackageGroup; |
| 1761 | break; | 1765 | break; |
| 1762 | default: | 1766 | default: |
| @@ -1873,6 +1877,10 @@ namespace WixToolset.Core | |||
| 1873 | { | 1877 | { |
| 1874 | case "Id": | 1878 | case "Id": |
| 1875 | id = this.Core.GetAttributeIdentifier(sourceLineNumbers, attrib); | 1879 | id = this.Core.GetAttributeIdentifier(sourceLineNumbers, attrib); |
| 1880 | if (id?.Id == BurnConstants.BundleDefaultBoundaryId) | ||
| 1881 | { | ||
| 1882 | this.Messaging.Write(CompilerErrors.ReservedValue(sourceLineNumbers, node.Name.LocalName, "Id", id.Id)); | ||
| 1883 | } | ||
| 1876 | break; | 1884 | break; |
| 1877 | case "Vital": | 1885 | case "Vital": |
| 1878 | vital = this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib); | 1886 | vital = this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib); |
| @@ -2151,6 +2159,11 @@ namespace WixToolset.Core | |||
| 2151 | compilerPayload.FinishCompilingPackage(); | 2159 | compilerPayload.FinishCompilingPackage(); |
| 2152 | var id = compilerPayload.Id; | 2160 | var id = compilerPayload.Id; |
| 2153 | 2161 | ||
| 2162 | if (id.Id == BurnConstants.BundleDefaultBoundaryId) | ||
| 2163 | { | ||
| 2164 | this.Messaging.Write(CompilerErrors.ReservedValue(sourceLineNumbers, node.Name.LocalName, "Id", id.Id)); | ||
| 2165 | } | ||
| 2166 | |||
| 2154 | if (null == logPathVariable) | 2167 | if (null == logPathVariable) |
| 2155 | { | 2168 | { |
| 2156 | logPathVariable = String.Concat("WixBundleLog_", id.Id); | 2169 | logPathVariable = String.Concat("WixBundleLog_", id.Id); |
| @@ -2588,6 +2601,10 @@ namespace WixToolset.Core | |||
| 2588 | { | 2601 | { |
| 2589 | case "Id": | 2602 | case "Id": |
| 2590 | id = this.Core.GetAttributeIdentifier(sourceLineNumbers, attrib); | 2603 | id = this.Core.GetAttributeIdentifier(sourceLineNumbers, attrib); |
| 2604 | if (id?.Id == BurnConstants.BundleChainPackageGroupId) | ||
| 2605 | { | ||
| 2606 | this.Messaging.Write(CompilerErrors.ReservedValue(sourceLineNumbers, node.Name.LocalName, "Id", id.Id)); | ||
| 2607 | } | ||
| 2591 | break; | 2608 | break; |
| 2592 | default: | 2609 | default: |
| 2593 | this.Core.UnexpectedAttribute(node, attrib); | 2610 | this.Core.UnexpectedAttribute(node, attrib); |
| @@ -2694,7 +2711,14 @@ namespace WixToolset.Core | |||
| 2694 | { | 2711 | { |
| 2695 | case "Id": | 2712 | case "Id": |
| 2696 | id = this.Core.GetAttributeIdentifierValue(sourceLineNumbers, attrib); | 2713 | id = this.Core.GetAttributeIdentifierValue(sourceLineNumbers, attrib); |
| 2697 | this.Core.CreateSimpleReference(sourceLineNumbers, SymbolDefinitions.WixBundlePackageGroup, id); | 2714 | if (id == BurnConstants.BundleChainPackageGroupId) |
| 2715 | { | ||
| 2716 | this.Messaging.Write(CompilerErrors.ReservedValue(sourceLineNumbers, node.Name.LocalName, "Id", id)); | ||
| 2717 | } | ||
| 2718 | else | ||
| 2719 | { | ||
| 2720 | this.Core.CreateSimpleReference(sourceLineNumbers, SymbolDefinitions.WixBundlePackageGroup, id); | ||
| 2721 | } | ||
| 2698 | break; | 2722 | break; |
| 2699 | case "After": | 2723 | case "After": |
| 2700 | after = this.Core.GetAttributeIdentifierValue(sourceLineNumbers, attrib); | 2724 | after = this.Core.GetAttributeIdentifierValue(sourceLineNumbers, attrib); |
