diff options
author | Nir Bar <nir.bar@panel-sw.co.il> | 2021-08-11 15:37:34 -0500 |
---|---|---|
committer | Sean Hall <r.sean.hall@gmail.com> | 2021-08-12 14:50:55 -0500 |
commit | 0042e3d4554a0d92e1da6141854b0f1aafa07d5b (patch) | |
tree | 7dcd25456993d6a9d68b9afd21fd1d1f77bd2a5e /src/ext | |
parent | c6b138ed166e30c750e499919b858dc6913937b6 (diff) | |
download | wix-0042e3d4554a0d92e1da6141854b0f1aafa07d5b.tar.gz wix-0042e3d4554a0d92e1da6141854b0f1aafa07d5b.tar.bz2 wix-0042e3d4554a0d92e1da6141854b0f1aafa07d5b.zip |
Allow BA to opt out of MSI transaction.
Diffstat (limited to 'src/ext')
-rw-r--r-- | src/ext/Bal/wixstdba/WixStandardBootstrapperApplication.cpp | 28 | ||||
-rw-r--r-- | src/ext/Bal/wixstdba/wixstdba.mc | 7 |
2 files changed, 35 insertions, 0 deletions
diff --git a/src/ext/Bal/wixstdba/WixStandardBootstrapperApplication.cpp b/src/ext/Bal/wixstdba/WixStandardBootstrapperApplication.cpp index bbe926f1..be2dde1f 100644 --- a/src/ext/Bal/wixstdba/WixStandardBootstrapperApplication.cpp +++ b/src/ext/Bal/wixstdba/WixStandardBootstrapperApplication.cpp | |||
@@ -186,6 +186,9 @@ static HRESULT DAPI SetVariableStringCallback( | |||
186 | __in BOOL fFormatted, | 186 | __in BOOL fFormatted, |
187 | __in_opt LPVOID pvContext | 187 | __in_opt LPVOID pvContext |
188 | ); | 188 | ); |
189 | static LPCSTR LoggingBoolToString( | ||
190 | __in BOOL f | ||
191 | ); | ||
189 | static LPCSTR LoggingRequestStateToString( | 192 | static LPCSTR LoggingRequestStateToString( |
190 | __in BOOTSTRAPPER_REQUEST_STATE requestState | 193 | __in BOOTSTRAPPER_REQUEST_STATE requestState |
191 | ); | 194 | ); |
@@ -1393,6 +1396,9 @@ public: // IBootstrapperApplication | |||
1393 | case BOOTSTRAPPER_APPLICATION_MESSAGE_ONCACHEPAYLOADEXTRACTPROGRESS: | 1396 | case BOOTSTRAPPER_APPLICATION_MESSAGE_ONCACHEPAYLOADEXTRACTPROGRESS: |
1394 | OnCachePayloadExtractProgressFallback(reinterpret_cast<BA_ONCACHEPAYLOADEXTRACTPROGRESS_ARGS*>(pvArgs), reinterpret_cast<BA_ONCACHEPAYLOADEXTRACTPROGRESS_RESULTS*>(pvResults)); | 1397 | OnCachePayloadExtractProgressFallback(reinterpret_cast<BA_ONCACHEPAYLOADEXTRACTPROGRESS_ARGS*>(pvArgs), reinterpret_cast<BA_ONCACHEPAYLOADEXTRACTPROGRESS_RESULTS*>(pvResults)); |
1395 | break; | 1398 | break; |
1399 | case BOOTSTRAPPER_APPLICATION_MESSAGE_ONPLANROLLBACKBOUNDARY: | ||
1400 | OnPlanRollbackBoundaryFallback(reinterpret_cast<BA_ONPLANROLLBACKBOUNDARY_ARGS*>(pvArgs), reinterpret_cast<BA_ONPLANROLLBACKBOUNDARY_RESULTS*>(pvResults)); | ||
1401 | break; | ||
1396 | default: | 1402 | default: |
1397 | #ifdef DEBUG | 1403 | #ifdef DEBUG |
1398 | BalLog(BOOTSTRAPPER_LOG_LEVEL_STANDARD, "WIXSTDBA: Forwarding unknown BA message: %d", message); | 1404 | BalLog(BOOTSTRAPPER_LOG_LEVEL_STANDARD, "WIXSTDBA: Forwarding unknown BA message: %d", message); |
@@ -1986,6 +1992,16 @@ private: // privates | |||
1986 | m_pfnBAFunctionsProc(BA_FUNCTIONS_MESSAGE_ONCACHEPAYLOADEXTRACTPROGRESS, pArgs, pResults, m_pvBAFunctionsProcContext); | 1992 | m_pfnBAFunctionsProc(BA_FUNCTIONS_MESSAGE_ONCACHEPAYLOADEXTRACTPROGRESS, pArgs, pResults, m_pvBAFunctionsProcContext); |
1987 | } | 1993 | } |
1988 | 1994 | ||
1995 | void OnPlanRollbackBoundaryFallback( | ||
1996 | __in BA_ONPLANROLLBACKBOUNDARY_ARGS* pArgs, | ||
1997 | __inout BA_ONPLANROLLBACKBOUNDARY_RESULTS* pResults | ||
1998 | ) | ||
1999 | { | ||
2000 | BOOL fTransaction = pResults->fTransaction; | ||
2001 | m_pfnBAFunctionsProc(BA_FUNCTIONS_MESSAGE_ONPLANROLLBACKBOUNDARY, pArgs, pResults, m_pvBAFunctionsProcContext); | ||
2002 | BalLogId(BOOTSTRAPPER_LOG_LEVEL_STANDARD, MSG_WIXSTDBA_PLANNED_ROLLBACK_BOUNDARY, m_hModule, pArgs->wzRollbackBoundaryId, LoggingBoolToString(fTransaction), LoggingBoolToString(pResults->fTransaction)); | ||
2003 | } | ||
2004 | |||
1989 | 2005 | ||
1990 | public: //CBalBaseBootstrapperApplication | 2006 | public: //CBalBaseBootstrapperApplication |
1991 | virtual STDMETHODIMP Initialize( | 2007 | virtual STDMETHODIMP Initialize( |
@@ -4140,6 +4156,18 @@ static HRESULT DAPI SetVariableStringCallback( | |||
4140 | return BalSetStringVariable(wzVariable, wzValue, fFormatted); | 4156 | return BalSetStringVariable(wzVariable, wzValue, fFormatted); |
4141 | } | 4157 | } |
4142 | 4158 | ||
4159 | static LPCSTR LoggingBoolToString( | ||
4160 | __in BOOL f | ||
4161 | ) | ||
4162 | { | ||
4163 | if (f) | ||
4164 | { | ||
4165 | return "Yes"; | ||
4166 | } | ||
4167 | |||
4168 | return "No"; | ||
4169 | } | ||
4170 | |||
4143 | static LPCSTR LoggingRequestStateToString( | 4171 | static LPCSTR LoggingRequestStateToString( |
4144 | __in BOOTSTRAPPER_REQUEST_STATE requestState | 4172 | __in BOOTSTRAPPER_REQUEST_STATE requestState |
4145 | ) | 4173 | ) |
diff --git a/src/ext/Bal/wixstdba/wixstdba.mc b/src/ext/Bal/wixstdba/wixstdba.mc index 688b1da1..659ccd01 100644 --- a/src/ext/Bal/wixstdba/wixstdba.mc +++ b/src/ext/Bal/wixstdba/wixstdba.mc | |||
@@ -71,3 +71,10 @@ Language=English | |||
71 | WIXSTDBA: Planned MSI package: %1!ls!, wixstdba requested: actionMsiProperty=%2!d!;uiLevel=%3!d!;disableExternalUiHandler=%4!hs!, bafunctions requested: actionMsiProperty=%5!d!;uiLevel=%6!d!;disableExternalUiHandler=%7!hs! | 71 | WIXSTDBA: Planned MSI package: %1!ls!, wixstdba requested: actionMsiProperty=%2!d!;uiLevel=%3!d!;disableExternalUiHandler=%4!hs!, bafunctions requested: actionMsiProperty=%5!d!;uiLevel=%6!d!;disableExternalUiHandler=%7!hs! |
72 | . | 72 | . |
73 | 73 | ||
74 | MessageId=8 | ||
75 | Severity=Success | ||
76 | SymbolicName=MSG_WIXSTDBA_PLANNED_ROLLBACK_BOUNDARY | ||
77 | Language=English | ||
78 | WIXSTDBA: Planned rollback boundary: %1!ls!, wixstdba requested transaction: %2!hs!, bafunctions requested transaction: %3!hs! | ||
79 | . | ||
80 | |||