diff options
| author | Sean Hall <r.sean.hall@gmail.com> | 2022-04-04 17:38:26 -0500 |
|---|---|---|
| committer | Sean Hall <r.sean.hall@gmail.com> | 2022-04-05 13:52:11 -0500 |
| commit | 75f4dce4ea53b82f99932573f27ccfc799d0c5c1 (patch) | |
| tree | 4225579b861b4998138c19e9108d3cf91b13ad80 /src/burn/engine/bundlepackageengine.cpp | |
| parent | 44c2ca035c1a5d52a6b3299ba3abbb8b88f7f1c0 (diff) | |
| download | wix-75f4dce4ea53b82f99932573f27ccfc799d0c5c1.tar.gz wix-75f4dce4ea53b82f99932573f27ccfc799d0c5c1.tar.bz2 wix-75f4dce4ea53b82f99932573f27ccfc799d0c5c1.zip | |
Add option for BundlePackage to be hidden in ARP like MsiPackage.
Requires support for this feature in the nested bundle.
Simplest implementation of 4454
Diffstat (limited to 'src/burn/engine/bundlepackageengine.cpp')
| -rw-r--r-- | src/burn/engine/bundlepackageengine.cpp | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/src/burn/engine/bundlepackageengine.cpp b/src/burn/engine/bundlepackageengine.cpp index cb34878f..00cf9454 100644 --- a/src/burn/engine/bundlepackageengine.cpp +++ b/src/burn/engine/bundlepackageengine.cpp | |||
| @@ -72,6 +72,10 @@ extern "C" HRESULT BundlePackageEngineParsePackageFromXml( | |||
| 72 | hr = XmlGetAttributeEx(pixnBundlePackage, L"RepairArguments", &pPackage->Bundle.sczRepairArguments); | 72 | hr = XmlGetAttributeEx(pixnBundlePackage, L"RepairArguments", &pPackage->Bundle.sczRepairArguments); |
| 73 | ExitOnOptionalXmlQueryFailure(hr, fFoundXml, "Failed to get @RepairArguments."); | 73 | ExitOnOptionalXmlQueryFailure(hr, fFoundXml, "Failed to get @RepairArguments."); |
| 74 | 74 | ||
| 75 | // @HideARP | ||
| 76 | hr = XmlGetYesNoAttribute(pixnBundlePackage, L"HideARP", &pPackage->Bundle.fHideARP); | ||
| 77 | ExitOnOptionalXmlQueryFailure(hr, fFoundXml, "Failed to get @HideARP."); | ||
| 78 | |||
| 75 | // @SupportsBurnProtocol | 79 | // @SupportsBurnProtocol |
| 76 | hr = XmlGetYesNoAttribute(pixnBundlePackage, L"SupportsBurnProtocol", &pPackage->Bundle.fSupportsBurnProtocol); | 80 | hr = XmlGetYesNoAttribute(pixnBundlePackage, L"SupportsBurnProtocol", &pPackage->Bundle.fSupportsBurnProtocol); |
| 77 | ExitOnOptionalXmlQueryFailure(hr, fFoundXml, "Failed to get @SupportsBurnProtocol."); | 81 | ExitOnOptionalXmlQueryFailure(hr, fFoundXml, "Failed to get @SupportsBurnProtocol."); |
| @@ -870,6 +874,12 @@ static HRESULT ExecuteBundle( | |||
| 870 | ExitOnFailure(hr, "Failed to append the parent to the command line."); | 874 | ExitOnFailure(hr, "Failed to append the parent to the command line."); |
| 871 | } | 875 | } |
| 872 | 876 | ||
| 877 | if (pPackage->Bundle.fHideARP) | ||
| 878 | { | ||
| 879 | hr = StrAllocConcatFormatted(&sczBaseCommand, L" -%ls", BURN_COMMANDLINE_SWITCH_SYSTEM_COMPONENT); | ||
| 880 | ExitOnFailure(hr, "Failed to append %ls", BURN_COMMANDLINE_SWITCH_SYSTEM_COMPONENT); | ||
| 881 | } | ||
| 882 | |||
| 873 | // Add the list of dependencies to ignore, if any, to the burn command line. | 883 | // Add the list of dependencies to ignore, if any, to the burn command line. |
| 874 | if (BOOTSTRAPPER_RELATION_CHAIN_PACKAGE == relationType) | 884 | if (BOOTSTRAPPER_RELATION_CHAIN_PACKAGE == relationType) |
| 875 | { | 885 | { |
