diff options
author | Sean Hall <r.sean.hall@gmail.com> | 2021-03-05 18:28:01 -0600 |
---|---|---|
committer | Sean Hall <r.sean.hall@gmail.com> | 2021-03-08 15:51:55 -0600 |
commit | 7fa2390b06b643ec775d00d7938c1624f5c0fdfe (patch) | |
tree | c946ecbc67337e3df00ce27730e7eb499ab075ef /src/WixToolset.Core | |
parent | 1f4652516a385aeeeea1558738efa0863f63c9fc (diff) | |
download | wix-7fa2390b06b643ec775d00d7938c1624f5c0fdfe.tar.gz wix-7fa2390b06b643ec775d00d7938c1624f5c0fdfe.tar.bz2 wix-7fa2390b06b643ec775d00d7938c1624f5c0fdfe.zip |
Fix parsing ProviderKey for Bundle.
Diffstat (limited to 'src/WixToolset.Core')
-rw-r--r-- | src/WixToolset.Core/Compiler_Bundle.cs | 16 |
1 files changed, 13 insertions, 3 deletions
diff --git a/src/WixToolset.Core/Compiler_Bundle.cs b/src/WixToolset.Core/Compiler_Bundle.cs index 46b79484..89ca94ba 100644 --- a/src/WixToolset.Core/Compiler_Bundle.cs +++ b/src/WixToolset.Core/Compiler_Bundle.cs | |||
@@ -197,7 +197,7 @@ namespace WixToolset.Core | |||
197 | parentName = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 197 | parentName = this.Core.GetAttributeValue(sourceLineNumbers, attrib); |
198 | break; | 198 | break; |
199 | case "ProviderKey": | 199 | case "ProviderKey": |
200 | this.ParseBundleProviderKeyAttribute(sourceLineNumbers, node, attrib); | 200 | // This can't be processed until we create the section. |
201 | break; | 201 | break; |
202 | case "SplashScreenSourceFile": | 202 | case "SplashScreenSourceFile": |
203 | splashScreenSourceFile = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 203 | splashScreenSourceFile = this.Core.GetAttributeValue(sourceLineNumbers, attrib); |
@@ -261,10 +261,20 @@ namespace WixToolset.Core | |||
261 | this.activeName = String.IsNullOrEmpty(name) ? Common.GenerateGuid() : name; | 261 | this.activeName = String.IsNullOrEmpty(name) ? Common.GenerateGuid() : name; |
262 | this.Core.CreateActiveSection(this.activeName, SectionType.Bundle, 0, this.Context.CompilationId); | 262 | this.Core.CreateActiveSection(this.activeName, SectionType.Bundle, 0, this.Context.CompilationId); |
263 | 263 | ||
264 | // Now that the active section is initialized, process only extension attributes. | 264 | // Now that the active section is initialized, process only extension attributes and the special ProviderKey attribute. |
265 | foreach (var attrib in node.Attributes()) | 265 | foreach (var attrib in node.Attributes()) |
266 | { | 266 | { |
267 | if (!String.IsNullOrEmpty(attrib.Name.NamespaceName) && CompilerCore.WixNamespace != attrib.Name.Namespace) | 267 | if (String.IsNullOrEmpty(attrib.Name.NamespaceName) || CompilerCore.WixNamespace == attrib.Name.Namespace) |
268 | { | ||
269 | switch (attrib.Name.LocalName) | ||
270 | { | ||
271 | case "ProviderKey": | ||
272 | this.ParseBundleProviderKeyAttribute(sourceLineNumbers, node, attrib); | ||
273 | break; | ||
274 | // Unknown attributes were reported earlier. | ||
275 | } | ||
276 | } | ||
277 | else | ||
268 | { | 278 | { |
269 | this.Core.ParseExtensionAttribute(node, attrib); | 279 | this.Core.ParseExtensionAttribute(node, attrib); |
270 | } | 280 | } |