diff options
author | Sean Hall <r.sean.hall@gmail.com> | 2021-12-10 11:42:44 -0600 |
---|---|---|
committer | Sean Hall <r.sean.hall@gmail.com> | 2021-12-11 20:03:13 -0600 |
commit | fc30db9fa3aa1d25a6ef078452864673caa67ec5 (patch) | |
tree | e3415a5a1329a867b2934a038243e95098214ec3 /src/ext | |
parent | 1d58b3333d1d694d08b68f6c87223aa504bfe773 (diff) | |
download | wix-fc30db9fa3aa1d25a6ef078452864673caa67ec5.tar.gz wix-fc30db9fa3aa1d25a6ef078452864673caa67ec5.tar.bz2 wix-fc30db9fa3aa1d25a6ef078452864673caa67ec5.zip |
Add BA events for setting the update bundle.
Fixes #6410
Diffstat (limited to 'src/ext')
-rw-r--r-- | src/ext/Bal/wixstdba/WixStandardBootstrapperApplication.cpp | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/src/ext/Bal/wixstdba/WixStandardBootstrapperApplication.cpp b/src/ext/Bal/wixstdba/WixStandardBootstrapperApplication.cpp index abf5af83..ec3c268a 100644 --- a/src/ext/Bal/wixstdba/WixStandardBootstrapperApplication.cpp +++ b/src/ext/Bal/wixstdba/WixStandardBootstrapperApplication.cpp | |||
@@ -1169,6 +1169,23 @@ public: // IBootstrapperApplication | |||
1169 | return hr; | 1169 | return hr; |
1170 | } | 1170 | } |
1171 | 1171 | ||
1172 | virtual STDMETHODIMP OnSetUpdateComplete( | ||
1173 | __in HRESULT hrStatus, | ||
1174 | __in_z_opt LPCWSTR wzPreviousPackageId, | ||
1175 | __in_z_opt LPCWSTR wzNewPackageId | ||
1176 | ) | ||
1177 | { | ||
1178 | BAL_INFO_PACKAGE* pPackage = NULL; | ||
1179 | |||
1180 | if (SUCCEEDED(hrStatus) && wzNewPackageId && | ||
1181 | SUCCEEDED(BalInfoAddUpdateBundleAsPackage(&m_Bundle.packages, wzNewPackageId, wzPreviousPackageId, &pPackage))) | ||
1182 | { | ||
1183 | InitializePackageInfoForPackage(pPackage); | ||
1184 | } | ||
1185 | |||
1186 | return S_OK; | ||
1187 | } | ||
1188 | |||
1172 | virtual STDMETHODIMP_(void) BAProcFallback( | 1189 | virtual STDMETHODIMP_(void) BAProcFallback( |
1173 | __in BOOTSTRAPPER_APPLICATION_MESSAGE message, | 1190 | __in BOOTSTRAPPER_APPLICATION_MESSAGE message, |
1174 | __in const LPVOID pvArgs, | 1191 | __in const LPVOID pvArgs, |
@@ -1400,6 +1417,12 @@ public: // IBootstrapperApplication | |||
1400 | case BOOTSTRAPPER_APPLICATION_MESSAGE_ONPLANROLLBACKBOUNDARY: | 1417 | case BOOTSTRAPPER_APPLICATION_MESSAGE_ONPLANROLLBACKBOUNDARY: |
1401 | OnPlanRollbackBoundaryFallback(reinterpret_cast<BA_ONPLANROLLBACKBOUNDARY_ARGS*>(pvArgs), reinterpret_cast<BA_ONPLANROLLBACKBOUNDARY_RESULTS*>(pvResults)); | 1418 | OnPlanRollbackBoundaryFallback(reinterpret_cast<BA_ONPLANROLLBACKBOUNDARY_ARGS*>(pvArgs), reinterpret_cast<BA_ONPLANROLLBACKBOUNDARY_RESULTS*>(pvResults)); |
1402 | break; | 1419 | break; |
1420 | case BOOTSTRAPPER_APPLICATION_MESSAGE_ONSETUPDATEBEGIN: | ||
1421 | OnSetUpdateBeginFallback(reinterpret_cast<BA_ONSETUPDATEBEGIN_ARGS*>(pvArgs), reinterpret_cast<BA_ONSETUPDATEBEGIN_RESULTS*>(pvResults)); | ||
1422 | break; | ||
1423 | case BOOTSTRAPPER_APPLICATION_MESSAGE_ONSETUPDATECOMPLETE: | ||
1424 | OnSetUpdateCompleteFallback(reinterpret_cast<BA_ONSETUPDATECOMPLETE_ARGS*>(pvArgs), reinterpret_cast<BA_ONSETUPDATECOMPLETE_RESULTS*>(pvResults)); | ||
1425 | break; | ||
1403 | default: | 1426 | default: |
1404 | #ifdef DEBUG | 1427 | #ifdef DEBUG |
1405 | BalLog(BOOTSTRAPPER_LOG_LEVEL_STANDARD, "WIXSTDBA: Forwarding unknown BA message: %d", message); | 1428 | BalLog(BOOTSTRAPPER_LOG_LEVEL_STANDARD, "WIXSTDBA: Forwarding unknown BA message: %d", message); |
@@ -2003,6 +2026,22 @@ private: // privates | |||
2003 | BalLogId(BOOTSTRAPPER_LOG_LEVEL_STANDARD, MSG_WIXSTDBA_PLANNED_ROLLBACK_BOUNDARY, m_hModule, pArgs->wzRollbackBoundaryId, LoggingBoolToString(fTransaction), LoggingBoolToString(pResults->fTransaction)); | 2026 | BalLogId(BOOTSTRAPPER_LOG_LEVEL_STANDARD, MSG_WIXSTDBA_PLANNED_ROLLBACK_BOUNDARY, m_hModule, pArgs->wzRollbackBoundaryId, LoggingBoolToString(fTransaction), LoggingBoolToString(pResults->fTransaction)); |
2004 | } | 2027 | } |
2005 | 2028 | ||
2029 | void OnSetUpdateBeginFallback( | ||
2030 | __in BA_ONSETUPDATEBEGIN_ARGS* pArgs, | ||
2031 | __inout BA_ONSETUPDATEBEGIN_RESULTS* pResults | ||
2032 | ) | ||
2033 | { | ||
2034 | m_pfnBAFunctionsProc(BA_FUNCTIONS_MESSAGE_ONSETUPDATEBEGIN, pArgs, pResults, m_pvBAFunctionsProcContext); | ||
2035 | } | ||
2036 | |||
2037 | void OnSetUpdateCompleteFallback( | ||
2038 | __in BA_ONSETUPDATECOMPLETE_ARGS* pArgs, | ||
2039 | __inout BA_ONSETUPDATECOMPLETE_RESULTS* pResults | ||
2040 | ) | ||
2041 | { | ||
2042 | m_pfnBAFunctionsProc(BA_FUNCTIONS_MESSAGE_ONSETUPDATECOMPLETE, pArgs, pResults, m_pvBAFunctionsProcContext); | ||
2043 | } | ||
2044 | |||
2006 | 2045 | ||
2007 | public: //CBalBaseBootstrapperApplication | 2046 | public: //CBalBaseBootstrapperApplication |
2008 | virtual STDMETHODIMP Initialize( | 2047 | virtual STDMETHODIMP Initialize( |