aboutsummaryrefslogtreecommitdiff
path: root/src/burn/engine/core.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/burn/engine/core.cpp')
-rw-r--r--src/burn/engine/core.cpp25
1 files changed, 23 insertions, 2 deletions
diff --git a/src/burn/engine/core.cpp b/src/burn/engine/core.cpp
index 87d748cc..bbd0ff96 100644
--- a/src/burn/engine/core.cpp
+++ b/src/burn/engine/core.cpp
@@ -79,6 +79,9 @@ static void LogRelatedBundles(
79 __in const BURN_RELATED_BUNDLES* pRelatedBundles, 79 __in const BURN_RELATED_BUNDLES* pRelatedBundles,
80 __in BOOL fReverse 80 __in BOOL fReverse
81 ); 81 );
82static void LogRollbackBoundary(
83 __in const BURN_ROLLBACK_BOUNDARY* pRollbackBoundary
84 );
82 85
83 86
84// function definitions 87// function definitions
@@ -2222,6 +2225,8 @@ static void LogPackages(
2222 __in const BOOTSTRAPPER_ACTION action 2225 __in const BOOTSTRAPPER_ACTION action
2223 ) 2226 )
2224{ 2227{
2228 BOOL fUninstalling = BOOTSTRAPPER_ACTION_UNINSTALL == action;
2229
2225 if (pUpgradeBundlePackage) 2230 if (pUpgradeBundlePackage)
2226 { 2231 {
2227 LogId(REPORT_STANDARD, MSG_PLANNED_UPGRADE_BUNDLE, pUpgradeBundlePackage->sczId, LoggingRequestStateToString(pUpgradeBundlePackage->defaultRequested), LoggingRequestStateToString(pUpgradeBundlePackage->requested), LoggingActionStateToString(pUpgradeBundlePackage->execute), LoggingActionStateToString(pUpgradeBundlePackage->rollback), LoggingDependencyActionToString(pUpgradeBundlePackage->dependencyExecute)); 2232 LogId(REPORT_STANDARD, MSG_PLANNED_UPGRADE_BUNDLE, pUpgradeBundlePackage->sczId, LoggingRequestStateToString(pUpgradeBundlePackage->defaultRequested), LoggingRequestStateToString(pUpgradeBundlePackage->requested), LoggingActionStateToString(pUpgradeBundlePackage->execute), LoggingActionStateToString(pUpgradeBundlePackage->rollback), LoggingDependencyActionToString(pUpgradeBundlePackage->dependencyExecute));
@@ -2233,7 +2238,7 @@ static void LogPackages(
2233 else 2238 else
2234 { 2239 {
2235 // Display related bundles first if uninstalling. 2240 // Display related bundles first if uninstalling.
2236 if (BOOTSTRAPPER_ACTION_UNINSTALL == action) 2241 if (fUninstalling)
2237 { 2242 {
2238 LogRelatedBundles(pRelatedBundles, TRUE); 2243 LogRelatedBundles(pRelatedBundles, TRUE);
2239 } 2244 }
@@ -2241,9 +2246,18 @@ static void LogPackages(
2241 // Display all the packages in the log. 2246 // Display all the packages in the log.
2242 for (DWORD i = 0; i < pPackages->cPackages; ++i) 2247 for (DWORD i = 0; i < pPackages->cPackages; ++i)
2243 { 2248 {
2244 const DWORD iPackage = (BOOTSTRAPPER_ACTION_UNINSTALL == action) ? pPackages->cPackages - 1 - i : i; 2249 const DWORD iPackage = fUninstalling ? pPackages->cPackages - 1 - i : i;
2245 const BURN_PACKAGE* pPackage = &pPackages->rgPackages[iPackage]; 2250 const BURN_PACKAGE* pPackage = &pPackages->rgPackages[iPackage];
2246 2251
2252 if (!fUninstalling && pPackage->pRollbackBoundaryForward)
2253 {
2254 LogRollbackBoundary(pPackage->pRollbackBoundaryForward);
2255 }
2256 else if (fUninstalling && pPackage->pRollbackBoundaryBackward)
2257 {
2258 LogRollbackBoundary(pPackage->pRollbackBoundaryBackward);
2259 }
2260
2247 LogId(REPORT_STANDARD, MSG_PLANNED_PACKAGE, pPackage->sczId, LoggingPackageStateToString(pPackage->currentState), LoggingRequestStateToString(pPackage->defaultRequested), LoggingRequestStateToString(pPackage->requested), LoggingActionStateToString(pPackage->execute), LoggingActionStateToString(pPackage->rollback), LoggingCacheTypeToString(pPackage->authoredCacheType), LoggingCacheTypeToString(pPackage->cacheType), LoggingBoolToString(pPackage->fPlannedCache), LoggingBoolToString(pPackage->fPlannedUncache), LoggingDependencyActionToString(pPackage->dependencyExecute), LoggingPackageRegistrationStateToString(pPackage->fCanAffectRegistration, pPackage->expectedInstallRegistrationState), LoggingPackageRegistrationStateToString(pPackage->fCanAffectRegistration, pPackage->expectedCacheRegistrationState)); 2261 LogId(REPORT_STANDARD, MSG_PLANNED_PACKAGE, pPackage->sczId, LoggingPackageStateToString(pPackage->currentState), LoggingRequestStateToString(pPackage->defaultRequested), LoggingRequestStateToString(pPackage->requested), LoggingActionStateToString(pPackage->execute), LoggingActionStateToString(pPackage->rollback), LoggingCacheTypeToString(pPackage->authoredCacheType), LoggingCacheTypeToString(pPackage->cacheType), LoggingBoolToString(pPackage->fPlannedCache), LoggingBoolToString(pPackage->fPlannedUncache), LoggingDependencyActionToString(pPackage->dependencyExecute), LoggingPackageRegistrationStateToString(pPackage->fCanAffectRegistration, pPackage->expectedInstallRegistrationState), LoggingPackageRegistrationStateToString(pPackage->fCanAffectRegistration, pPackage->expectedCacheRegistrationState));
2248 2262
2249 if (BURN_PACKAGE_TYPE_MSI == pPackage->type) 2263 if (BURN_PACKAGE_TYPE_MSI == pPackage->type)
@@ -2313,3 +2327,10 @@ static void LogRelatedBundles(
2313 } 2327 }
2314 } 2328 }
2315} 2329}
2330
2331static void LogRollbackBoundary(
2332 __in const BURN_ROLLBACK_BOUNDARY* pRollbackBoundary
2333 )
2334{
2335 LogId(REPORT_STANDARD, MSG_PLANNED_ROLLBACK_BOUNDARY, pRollbackBoundary->sczId, LoggingBoolToString(pRollbackBoundary->fVital), LoggingBoolToString(pRollbackBoundary->fTransaction), LoggingBoolToString(pRollbackBoundary->fTransactionAuthored));
2336}