From b1b90775c9d715ae4193e3faaa419cf163a49bd5 Mon Sep 17 00:00:00 2001 From: Rob Mensching Date: Fri, 2 Jan 2026 16:12:01 -0800 Subject: Random fixes --- src/burn/engine/plan.cpp | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) (limited to 'src/burn/engine/plan.cpp') diff --git a/src/burn/engine/plan.cpp b/src/burn/engine/plan.cpp index 7994dd32..e8e796fb 100644 --- a/src/burn/engine/plan.cpp +++ b/src/burn/engine/plan.cpp @@ -1508,7 +1508,7 @@ extern "C" HRESULT PlanRelatedBundlesComplete( for (DWORD i = 0; i < pPlan->cExecuteActions; ++i) { BOOTSTRAPPER_ACTION_STATE packageAction = BOOTSTRAPPER_ACTION_STATE_NONE; - BURN_PACKAGE* pPackage = &pPlan->rgExecuteActions[i].relatedBundle.pRelatedBundle->package; + BURN_PACKAGE* pPackage = NULL; BOOL fBundle = FALSE; switch (pPlan->rgExecuteActions[i].type) @@ -1540,7 +1540,7 @@ extern "C" HRESULT PlanRelatedBundlesComplete( if (fBundle && BOOTSTRAPPER_ACTION_STATE_NONE != packageAction) { - if (pPackage->cDependencyProviders) + if (pPackage && pPackage->cDependencyProviders) { // Bundles only support a single provider key. const BURN_DEPENDENCY_PROVIDER* pProvider = pPackage->rgDependencyProviders; @@ -2013,6 +2013,7 @@ extern "C" HRESULT PlanRollbackBoundaryComplete( // Add checkpoints. hr = PlanExecuteCheckpoint(pPlan); + ExitOnFailure(hr, "Failed to append execute checkpoint for rollback boundary complete."); // Add complete rollback boundary to execute plan. hr = PlanAppendExecuteAction(pPlan, &pExecuteAction); @@ -2948,9 +2949,9 @@ static void ExecuteActionLog( case BURN_EXECUTE_ACTION_TYPE_PACKAGE_DEPENDENCY: LogStringLine(PlanDumpLevel, "%ls action[%u]: PACKAGE_DEPENDENCY package id: %ls, bundle provider key: %ls", wzBase, iAction, pAction->packageDependency.pPackage->sczId, pAction->packageDependency.sczBundleProviderKey); - for (DWORD j = 0; j < pAction->packageProvider.pPackage->cDependencyProviders; ++j) + for (DWORD j = 0; j < pAction->packageDependency.pPackage->cDependencyProviders; ++j) { - const BURN_DEPENDENCY_PROVIDER* pProvider = pAction->packageProvider.pPackage->rgDependencyProviders + j; + const BURN_DEPENDENCY_PROVIDER* pProvider = pAction->packageDependency.pPackage->rgDependencyProviders + j; LogStringLine(PlanDumpLevel, " Provider[%u]: key: %ls, action: %hs", j, pProvider->sczKey, LoggingDependencyActionToString(fRollback ? pProvider->dependentRollback : pProvider->dependentExecute)); } break; -- cgit v1.2.3-55-g6feb