aboutsummaryrefslogtreecommitdiff
path: root/src/engine/apply.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/engine/apply.cpp')
-rw-r--r--src/engine/apply.cpp15
1 files changed, 8 insertions, 7 deletions
diff --git a/src/engine/apply.cpp b/src/engine/apply.cpp
index f40b3841..0eb8a710 100644
--- a/src/engine/apply.cpp
+++ b/src/engine/apply.cpp
@@ -538,6 +538,9 @@ extern "C" HRESULT ApplyCache(
538 538
539 if (!pPackage->fPerMachine && !cacheContext.wzLayoutDirectory) 539 if (!pPackage->fPerMachine && !cacheContext.wzLayoutDirectory)
540 { 540 {
541 hr = CacheGetCompletedPath(FALSE, pPackage->sczCacheId, &pPackage->sczCacheFolder);
542 ExitOnFailure(hr, "Failed to get cached path for package with cache id: %ls", pPackage->sczCacheId);
543
541 cacheContext.hPipe = INVALID_HANDLE_VALUE; 544 cacheContext.hPipe = INVALID_HANDLE_VALUE;
542 } 545 }
543 546
@@ -800,12 +803,6 @@ static HRESULT ApplyCachePackage(
800 HRESULT hr = S_OK; 803 HRESULT hr = S_OK;
801 BOOTSTRAPPER_CACHEPACKAGECOMPLETE_ACTION cachePackageCompleteAction = BOOTSTRAPPER_CACHEPACKAGECOMPLETE_ACTION_NONE; 804 BOOTSTRAPPER_CACHEPACKAGECOMPLETE_ACTION cachePackageCompleteAction = BOOTSTRAPPER_CACHEPACKAGECOMPLETE_ACTION_NONE;
802 805
803 if (!pPackage->sczCacheFolder && !pContext->wzLayoutDirectory)
804 {
805 hr = CacheGetCompletedPath(pPackage->fPerMachine, pPackage->sczCacheId, &pPackage->sczCacheFolder);
806 ExitOnFailure(hr, "Failed to get cached path for package with cache id: %ls", pPackage->sczCacheId);
807 }
808
809 for (;;) 806 for (;;)
810 { 807 {
811 hr = UserExperienceOnCachePackageBegin(pContext->pUX, pPackage->sczId, pPackage->payloads.cPayloads, pPackage->payloads.qwTotalSize); 808 hr = UserExperienceOnCachePackageBegin(pContext->pUX, pPackage->sczId, pPackage->payloads.cPayloads, pPackage->payloads.qwTotalSize);
@@ -1038,7 +1035,11 @@ static HRESULT ApplyCacheVerifyContainerOrPayload(
1038 hr = UserExperienceOnCacheContainerOrPayloadVerifyBegin(pContext->pUX, wzPackageOrContainerId, wzPayloadId); 1035 hr = UserExperienceOnCacheContainerOrPayloadVerifyBegin(pContext->pUX, wzPackageOrContainerId, wzPayloadId);
1039 ExitOnRootFailure(hr, "BA aborted cache container or payload verify begin."); 1036 ExitOnRootFailure(hr, "BA aborted cache container or payload verify begin.");
1040 1037
1041 if (pContainer) 1038 if (INVALID_HANDLE_VALUE != pContext->hPipe)
1039 {
1040 hr = ElevationCacheVerifyContainerOrPayload(pContext->hPipe, pContainer, pPackage, pPayload, pContext->wzLayoutDirectory);
1041 }
1042 else if (pContainer)
1042 { 1043 {
1043 hr = CacheVerifyContainer(pContainer, pContext->wzLayoutDirectory); 1044 hr = CacheVerifyContainer(pContainer, pContext->wzLayoutDirectory);
1044 } 1045 }