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/exeengine.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/exeengine.cpp')
-rw-r--r-- | src/engine/exeengine.cpp | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/src/engine/exeengine.cpp b/src/engine/exeengine.cpp index cee755e3..46905fc3 100644 --- a/src/engine/exeengine.cpp +++ b/src/engine/exeengine.cpp | |||
@@ -269,8 +269,7 @@ extern "C" HRESULT ExeEnginePlanAddPackage( | |||
269 | __in BURN_PLAN* pPlan, | 269 | __in BURN_PLAN* pPlan, |
270 | __in BURN_LOGGING* pLog, | 270 | __in BURN_LOGGING* pLog, |
271 | __in BURN_VARIABLES* pVariables, | 271 | __in BURN_VARIABLES* pVariables, |
272 | __in_opt HANDLE hCacheEvent, | 272 | __in_opt HANDLE hCacheEvent |
273 | __in BOOL fPlanPackageCacheRollback | ||
274 | ) | 273 | ) |
275 | { | 274 | { |
276 | HRESULT hr = S_OK; | 275 | HRESULT hr = S_OK; |
@@ -279,7 +278,7 @@ extern "C" HRESULT ExeEnginePlanAddPackage( | |||
279 | // add wait for cache | 278 | // add wait for cache |
280 | if (hCacheEvent) | 279 | if (hCacheEvent) |
281 | { | 280 | { |
282 | hr = PlanExecuteCacheSyncAndRollback(pPlan, pPackage, hCacheEvent, fPlanPackageCacheRollback); | 281 | hr = PlanExecuteCacheSyncAndRollback(pPlan, pPackage, hCacheEvent); |
283 | ExitOnFailure(hr, "Failed to plan package cache syncpoint"); | 282 | ExitOnFailure(hr, "Failed to plan package cache syncpoint"); |
284 | } | 283 | } |
285 | 284 | ||