diff options
author | Sean Hall <r.sean.hall@gmail.com> | 2021-04-16 09:40:18 -0500 |
---|---|---|
committer | Sean Hall <r.sean.hall@gmail.com> | 2021-04-19 23:12:55 -0500 |
commit | 941c47e5a3f57ce9626b447a95740b1444e69343 (patch) | |
tree | 6225b78f5fc7c8f88a2abf187a6a76d45b36ec26 /src/engine/mspengine.cpp | |
parent | d32f770ca05748df9e356444c7e617d5eeedb60c (diff) | |
download | wix-941c47e5a3f57ce9626b447a95740b1444e69343.tar.gz wix-941c47e5a3f57ce9626b447a95740b1444e69343.tar.bz2 wix-941c47e5a3f57ce9626b447a95740b1444e69343.zip |
Detect a package as cached if any of its payloads exist.
Detect is supposed to be fast, so it can't fully verify every payload for every package. The engine was wasting its time by trying to verify file sizes without the hash. Even worse, it was making decisions during planning based on that insufficient verification.
Contributes to #3640
Diffstat (limited to 'src/engine/mspengine.cpp')
-rw-r--r-- | src/engine/mspengine.cpp | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/src/engine/mspengine.cpp b/src/engine/mspengine.cpp index ed105d24..5ccb6718 100644 --- a/src/engine/mspengine.cpp +++ b/src/engine/mspengine.cpp | |||
@@ -506,8 +506,7 @@ extern "C" HRESULT MspEnginePlanAddPackage( | |||
506 | __in BURN_PLAN* pPlan, | 506 | __in BURN_PLAN* pPlan, |
507 | __in BURN_LOGGING* pLog, | 507 | __in BURN_LOGGING* pLog, |
508 | __in BURN_VARIABLES* pVariables, | 508 | __in BURN_VARIABLES* pVariables, |
509 | __in_opt HANDLE hCacheEvent, | 509 | __in_opt HANDLE hCacheEvent |
510 | __in BOOL fPlanPackageCacheRollback | ||
511 | ) | 510 | ) |
512 | { | 511 | { |
513 | HRESULT hr = S_OK; | 512 | HRESULT hr = S_OK; |
@@ -517,7 +516,7 @@ extern "C" HRESULT MspEnginePlanAddPackage( | |||
517 | // add wait for cache | 516 | // add wait for cache |
518 | if (hCacheEvent) | 517 | if (hCacheEvent) |
519 | { | 518 | { |
520 | hr = PlanExecuteCacheSyncAndRollback(pPlan, pPackage, hCacheEvent, fPlanPackageCacheRollback); | 519 | hr = PlanExecuteCacheSyncAndRollback(pPlan, pPackage, hCacheEvent); |
521 | ExitOnFailure(hr, "Failed to plan package cache syncpoint"); | 520 | ExitOnFailure(hr, "Failed to plan package cache syncpoint"); |
522 | } | 521 | } |
523 | 522 | ||