diff options
Diffstat (limited to 'src/engine/userexperience.cpp')
-rw-r--r-- | src/engine/userexperience.cpp | 17 |
1 files changed, 9 insertions, 8 deletions
diff --git a/src/engine/userexperience.cpp b/src/engine/userexperience.cpp index 8c6f29f3..7e68d664 100644 --- a/src/engine/userexperience.cpp +++ b/src/engine/userexperience.cpp | |||
@@ -515,9 +515,9 @@ EXTERN_C BAAPI UserExperienceOnCacheAcquireResolving( | |||
515 | __in DWORD cSearchPaths, | 515 | __in DWORD cSearchPaths, |
516 | __in BOOL fFoundLocal, | 516 | __in BOOL fFoundLocal, |
517 | __in DWORD* pdwChosenSearchPath, | 517 | __in DWORD* pdwChosenSearchPath, |
518 | __in_z_opt LPCWSTR wzDownloadUrl, | 518 | __in_z_opt LPWSTR* pwzDownloadUrl, |
519 | __in_z_opt LPCWSTR wzPayloadContainerId, | 519 | __in_z_opt LPCWSTR wzPayloadContainerId, |
520 | __inout BOOTSTRAPPER_CACHE_OPERATION* pCacheOperation | 520 | __inout BOOTSTRAPPER_CACHE_RESOLVE_OPERATION* pCacheOperation |
521 | ) | 521 | ) |
522 | { | 522 | { |
523 | HRESULT hr = S_OK; | 523 | HRESULT hr = S_OK; |
@@ -531,14 +531,14 @@ EXTERN_C BAAPI UserExperienceOnCacheAcquireResolving( | |||
531 | args.cSearchPaths = cSearchPaths; | 531 | args.cSearchPaths = cSearchPaths; |
532 | args.fFoundLocal = fFoundLocal; | 532 | args.fFoundLocal = fFoundLocal; |
533 | args.dwRecommendedSearchPath = *pdwChosenSearchPath; | 533 | args.dwRecommendedSearchPath = *pdwChosenSearchPath; |
534 | args.wzDownloadUrl = wzDownloadUrl; | 534 | args.wzDownloadUrl = *pwzDownloadUrl; |
535 | args.recommendation = *pCacheOperation; | 535 | args.recommendation = *pCacheOperation; |
536 | 536 | ||
537 | results.cbSize = sizeof(results); | 537 | results.cbSize = sizeof(results); |
538 | results.dwChosenSearchPath = *pdwChosenSearchPath; | 538 | results.dwChosenSearchPath = *pdwChosenSearchPath; |
539 | results.action = *pCacheOperation; | 539 | results.action = *pCacheOperation; |
540 | 540 | ||
541 | hr = SendBAMessage(pUserExperience, BOOTSTRAPPER_APPLICATION_MESSAGE_ONCACHEACQUIRERESOLVING, &args, &results); | 541 | hr = SendBAMessageFromInactiveEngine(pUserExperience, BOOTSTRAPPER_APPLICATION_MESSAGE_ONCACHEACQUIRERESOLVING, &args, &results); |
542 | ExitOnFailure(hr, "BA OnCacheAcquireResolving failed."); | 542 | ExitOnFailure(hr, "BA OnCacheAcquireResolving failed."); |
543 | 543 | ||
544 | if (results.fCancel) | 544 | if (results.fCancel) |
@@ -548,13 +548,14 @@ EXTERN_C BAAPI UserExperienceOnCacheAcquireResolving( | |||
548 | else | 548 | else |
549 | { | 549 | { |
550 | // Verify the BA requested an action that is possible. | 550 | // Verify the BA requested an action that is possible. |
551 | if (BOOTSTRAPPER_CACHE_OPERATION_DOWNLOAD == results.action && wzDownloadUrl && *wzDownloadUrl || | 551 | if (BOOTSTRAPPER_CACHE_RESOLVE_DOWNLOAD == results.action && *pwzDownloadUrl && **pwzDownloadUrl || |
552 | BOOTSTRAPPER_CACHE_OPERATION_EXTRACT == results.action && wzPayloadContainerId || | 552 | BOOTSTRAPPER_CACHE_RESOLVE_CONTAINER == results.action && wzPayloadContainerId || |
553 | BOOTSTRAPPER_CACHE_OPERATION_NONE == results.action) | 553 | BOOTSTRAPPER_CACHE_RESOLVE_RETRY == results.action || |
554 | BOOTSTRAPPER_CACHE_RESOLVE_NONE == results.action) | ||
554 | { | 555 | { |
555 | *pCacheOperation = results.action; | 556 | *pCacheOperation = results.action; |
556 | } | 557 | } |
557 | else if (BOOTSTRAPPER_CACHE_OPERATION_COPY == results.action && results.dwChosenSearchPath < cSearchPaths) | 558 | else if (BOOTSTRAPPER_CACHE_RESOLVE_LOCAL == results.action && results.dwChosenSearchPath < cSearchPaths) |
558 | { | 559 | { |
559 | *pdwChosenSearchPath = results.dwChosenSearchPath; | 560 | *pdwChosenSearchPath = results.dwChosenSearchPath; |
560 | *pCacheOperation = results.action; | 561 | *pCacheOperation = results.action; |