diff options
Diffstat (limited to 'src/wixext/BalBurnBackendExtension.cs')
-rw-r--r-- | src/wixext/BalBurnBackendExtension.cs | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/src/wixext/BalBurnBackendExtension.cs b/src/wixext/BalBurnBackendExtension.cs index 5e647b1c..6e639c1b 100644 --- a/src/wixext/BalBurnBackendExtension.cs +++ b/src/wixext/BalBurnBackendExtension.cs | |||
@@ -43,6 +43,11 @@ namespace WixToolset.Bal | |||
43 | var isDNC = baId.StartsWith("WixDotNetCoreBootstrapperApplicationHost"); | 43 | var isDNC = baId.StartsWith("WixDotNetCoreBootstrapperApplicationHost"); |
44 | var isSCD = isDNC && this.VerifySCD(section); | 44 | var isSCD = isDNC && this.VerifySCD(section); |
45 | 45 | ||
46 | if (isDNC) | ||
47 | { | ||
48 | this.FinalizeBAFactorySymbol(section); | ||
49 | } | ||
50 | |||
46 | if (isStdBA || isMBA || isDNC) | 51 | if (isStdBA || isMBA || isDNC) |
47 | { | 52 | { |
48 | this.VerifyBAFunctions(section); | 53 | this.VerifyBAFunctions(section); |
@@ -54,6 +59,25 @@ namespace WixToolset.Bal | |||
54 | } | 59 | } |
55 | } | 60 | } |
56 | 61 | ||
62 | private void FinalizeBAFactorySymbol(IntermediateSection section) | ||
63 | { | ||
64 | var factorySymbol = section.Symbols.OfType<WixBalBAFactoryAssemblySymbol>().SingleOrDefault(); | ||
65 | if (null == factorySymbol) | ||
66 | { | ||
67 | return; | ||
68 | } | ||
69 | |||
70 | var factoryPayloadSymbol = section.Symbols.OfType<WixBundlePayloadSymbol>() | ||
71 | .Where(p => p.Id.Id == factorySymbol.PayloadId) | ||
72 | .SingleOrDefault(); | ||
73 | if (null == factoryPayloadSymbol) | ||
74 | { | ||
75 | return; | ||
76 | } | ||
77 | |||
78 | factorySymbol.FilePath = factoryPayloadSymbol.Name; | ||
79 | } | ||
80 | |||
57 | private void VerifyBAFunctions(IntermediateSection section) | 81 | private void VerifyBAFunctions(IntermediateSection section) |
58 | { | 82 | { |
59 | WixBalBAFunctionsSymbol baFunctionsSymbol = null; | 83 | WixBalBAFunctionsSymbol baFunctionsSymbol = null; |