diff options
| author | Sean Hall <r.sean.hall@gmail.com> | 2021-03-11 20:18:06 -0600 |
|---|---|---|
| committer | Sean Hall <r.sean.hall@gmail.com> | 2021-03-11 20:56:20 -0600 |
| commit | 88ef687ebdad49eaacf729a554c894181ce23ac9 (patch) | |
| tree | 084a97ce9326b39cbcaf8423c27c389e5a021e34 /src/wixstdba/WixStandardBootstrapperApplication.cpp | |
| parent | 7c55f8cb364da0fe066078a1c68c9bb05a40cd8a (diff) | |
| download | wix-88ef687ebdad49eaacf729a554c894181ce23ac9.tar.gz wix-88ef687ebdad49eaacf729a554c894181ce23ac9.tar.bz2 wix-88ef687ebdad49eaacf729a554c894181ce23ac9.zip | |
Integrate ForwardCompatible and RelatedBundle changes.
Diffstat (limited to 'src/wixstdba/WixStandardBootstrapperApplication.cpp')
| -rw-r--r-- | src/wixstdba/WixStandardBootstrapperApplication.cpp | 33 |
1 files changed, 23 insertions, 10 deletions
diff --git a/src/wixstdba/WixStandardBootstrapperApplication.cpp b/src/wixstdba/WixStandardBootstrapperApplication.cpp index 9c882dfa..0fcf3a21 100644 --- a/src/wixstdba/WixStandardBootstrapperApplication.cpp +++ b/src/wixstdba/WixStandardBootstrapperApplication.cpp | |||
| @@ -266,22 +266,27 @@ public: // IBootstrapperApplication | |||
| 266 | __in BOOL fPerMachine, | 266 | __in BOOL fPerMachine, |
| 267 | __in LPCWSTR wzVersion, | 267 | __in LPCWSTR wzVersion, |
| 268 | __in BOOTSTRAPPER_RELATED_OPERATION operation, | 268 | __in BOOTSTRAPPER_RELATED_OPERATION operation, |
| 269 | __in BOOL fMissingFromCache, | ||
| 269 | __inout BOOL* pfCancel | 270 | __inout BOOL* pfCancel |
| 270 | ) | 271 | ) |
| 271 | { | 272 | { |
| 272 | BAL_INFO_PACKAGE* pPackage = NULL; | 273 | BAL_INFO_PACKAGE* pPackage = NULL; |
| 273 | if (SUCCEEDED(BalInfoAddRelatedBundleAsPackage(&m_Bundle.packages, wzBundleId, relationType, fPerMachine, &pPackage))) | ||
| 274 | { | ||
| 275 | InitializePackageInfoForPackage(pPackage); | ||
| 276 | } | ||
| 277 | 274 | ||
| 278 | // If we're not doing a prerequisite install, remember when our bundle would cause a downgrade. | 275 | if (!fMissingFromCache) |
| 279 | if (!m_fPrereq && BOOTSTRAPPER_RELATED_OPERATION_DOWNGRADE == operation) | ||
| 280 | { | 276 | { |
| 281 | m_fDowngrading = TRUE; | 277 | if (SUCCEEDED(BalInfoAddRelatedBundleAsPackage(&m_Bundle.packages, wzBundleId, relationType, fPerMachine, &pPackage))) |
| 278 | { | ||
| 279 | InitializePackageInfoForPackage(pPackage); | ||
| 280 | } | ||
| 281 | |||
| 282 | // If we're not doing a prerequisite install, remember when our bundle would cause a downgrade. | ||
| 283 | if (!m_fPrereq && BOOTSTRAPPER_RELATED_OPERATION_DOWNGRADE == operation) | ||
| 284 | { | ||
| 285 | m_fDowngrading = TRUE; | ||
| 286 | } | ||
| 282 | } | 287 | } |
| 283 | 288 | ||
| 284 | return CBalBaseBootstrapperApplication::OnDetectRelatedBundle(wzBundleId, relationType, wzBundleTag, fPerMachine, wzVersion, operation, pfCancel); | 289 | return CBalBaseBootstrapperApplication::OnDetectRelatedBundle(wzBundleId, relationType, wzBundleTag, fPerMachine, wzVersion, operation, fMissingFromCache, pfCancel); |
| 285 | } | 290 | } |
| 286 | 291 | ||
| 287 | 292 | ||
| @@ -1346,9 +1351,7 @@ private: // privates | |||
| 1346 | __inout BA_ONDETECTFORWARDCOMPATIBLEBUNDLE_RESULTS* pResults | 1351 | __inout BA_ONDETECTFORWARDCOMPATIBLEBUNDLE_RESULTS* pResults |
| 1347 | ) | 1352 | ) |
| 1348 | { | 1353 | { |
| 1349 | BOOL fIgnoreBundle = pResults->fIgnoreBundle; | ||
| 1350 | m_pfnBAFunctionsProc(BA_FUNCTIONS_MESSAGE_ONDETECTFORWARDCOMPATIBLEBUNDLE, pArgs, pResults, m_pvBAFunctionsProcContext); | 1354 | m_pfnBAFunctionsProc(BA_FUNCTIONS_MESSAGE_ONDETECTFORWARDCOMPATIBLEBUNDLE, pArgs, pResults, m_pvBAFunctionsProcContext); |
| 1351 | BalLogId(BOOTSTRAPPER_LOG_LEVEL_STANDARD, MSG_WIXSTDBA_DETECTED_FORWARD_COMPATIBLE_BUNDLE, m_hModule, pArgs->wzBundleId, fIgnoreBundle ? "ignore" : "enable", pResults->fIgnoreBundle ? "ignore" : "enable"); | ||
| 1352 | } | 1355 | } |
| 1353 | 1356 | ||
| 1354 | void OnDetectUpdateBeginFallback( | 1357 | void OnDetectUpdateBeginFallback( |
| @@ -1811,6 +1814,16 @@ private: // privates | |||
| 1811 | m_pfnBAFunctionsProc(BA_FUNCTIONS_MESSAGE_ONSYSTEMRESTOREPOINTCOMPLETE, pArgs, pResults, m_pvBAFunctionsProcContext); | 1814 | m_pfnBAFunctionsProc(BA_FUNCTIONS_MESSAGE_ONSYSTEMRESTOREPOINTCOMPLETE, pArgs, pResults, m_pvBAFunctionsProcContext); |
| 1812 | } | 1815 | } |
| 1813 | 1816 | ||
| 1817 | void OnPlanForwardCompatibleBundleFallback( | ||
| 1818 | __in BA_ONPLANFORWARDCOMPATIBLEBUNDLE_ARGS* pArgs, | ||
| 1819 | __inout BA_ONPLANFORWARDCOMPATIBLEBUNDLE_RESULTS* pResults | ||
| 1820 | ) | ||
| 1821 | { | ||
| 1822 | BOOL fIgnoreBundle = pResults->fIgnoreBundle; | ||
| 1823 | m_pfnBAFunctionsProc(BA_FUNCTIONS_MESSAGE_ONPLANFORWARDCOMPATIBLEBUNDLE, pArgs, pResults, m_pvBAFunctionsProcContext); | ||
| 1824 | BalLogId(BOOTSTRAPPER_LOG_LEVEL_STANDARD, MSG_WIXSTDBA_PLANNED_FORWARD_COMPATIBLE_BUNDLE, m_hModule, pArgs->wzBundleId, fIgnoreBundle ? "ignore" : "enable", pResults->fIgnoreBundle ? "ignore" : "enable"); | ||
| 1825 | } | ||
| 1826 | |||
| 1814 | // | 1827 | // |
| 1815 | // UiThreadProc - entrypoint for UI thread. | 1828 | // UiThreadProc - entrypoint for UI thread. |
| 1816 | // | 1829 | // |
