diff options
| author | Sean Hall <r.sean.hall@gmail.com> | 2021-02-04 20:18:02 -0600 |
|---|---|---|
| committer | Sean Hall <r.sean.hall@gmail.com> | 2021-02-04 22:16:10 -0600 |
| commit | c5b9c47a26ca4e9d4eea63b7219b4d34938a5f1a (patch) | |
| tree | 1c031f6bea38cad0fa88af7bf7b89caf1b1a3ba8 /src | |
| parent | dc992c49f30e0d2b912a6449a33b4448ef862f31 (diff) | |
| download | wix-c5b9c47a26ca4e9d4eea63b7219b4d34938a5f1a.tar.gz wix-c5b9c47a26ca4e9d4eea63b7219b4d34938a5f1a.tar.bz2 wix-c5b9c47a26ca4e9d4eea63b7219b4d34938a5f1a.zip | |
Finalize MSP package registration states before logging them.
Diffstat (limited to 'src')
| -rw-r--r-- | src/engine/apply.cpp | 10 | ||||
| -rw-r--r-- | src/engine/core.cpp | 2 | ||||
| -rw-r--r-- | src/engine/mspengine.cpp | 9 |
3 files changed, 13 insertions, 8 deletions
diff --git a/src/engine/apply.cpp b/src/engine/apply.cpp index 8d2f5757..7c47ba75 100644 --- a/src/engine/apply.cpp +++ b/src/engine/apply.cpp | |||
| @@ -885,6 +885,11 @@ static void CalculateKeepRegistration( | |||
| 885 | { | 885 | { |
| 886 | BURN_PACKAGE* pPackage = pEngineState->packages.rgPackages + i; | 886 | BURN_PACKAGE* pPackage = pEngineState->packages.rgPackages + i; |
| 887 | 887 | ||
| 888 | if (BURN_PACKAGE_TYPE_MSP == pPackage->type) | ||
| 889 | { | ||
| 890 | MspEngineFinalizeInstallRegistrationState(pPackage); | ||
| 891 | } | ||
| 892 | |||
| 888 | LogId(REPORT_STANDARD, MSG_POST_APPLY_PACKAGE, pPackage->sczId, LoggingPackageRegistrationStateToString(pPackage->fCanAffectRegistration, pPackage->installRegistrationState), LoggingPackageRegistrationStateToString(pPackage->fCanAffectRegistration, pPackage->cacheRegistrationState)); | 893 | LogId(REPORT_STANDARD, MSG_POST_APPLY_PACKAGE, pPackage->sczId, LoggingPackageRegistrationStateToString(pPackage->fCanAffectRegistration, pPackage->installRegistrationState), LoggingPackageRegistrationStateToString(pPackage->fCanAffectRegistration, pPackage->cacheRegistrationState)); |
| 889 | 894 | ||
| 890 | if (!pPackage->fCanAffectRegistration) | 895 | if (!pPackage->fCanAffectRegistration) |
| @@ -892,11 +897,6 @@ static void CalculateKeepRegistration( | |||
| 892 | continue; | 897 | continue; |
| 893 | } | 898 | } |
| 894 | 899 | ||
| 895 | if (BURN_PACKAGE_TYPE_MSP == pPackage->type) | ||
| 896 | { | ||
| 897 | MspEngineFinalizeInstallRegistrationState(pPackage); | ||
| 898 | } | ||
| 899 | |||
| 900 | if (BURN_PACKAGE_REGISTRATION_STATE_PRESENT == pPackage->installRegistrationState || | 900 | if (BURN_PACKAGE_REGISTRATION_STATE_PRESENT == pPackage->installRegistrationState || |
| 901 | BURN_PACKAGE_REGISTRATION_STATE_PRESENT == pPackage->cacheRegistrationState) | 901 | BURN_PACKAGE_REGISTRATION_STATE_PRESENT == pPackage->cacheRegistrationState) |
| 902 | { | 902 | { |
diff --git a/src/engine/core.cpp b/src/engine/core.cpp index 1503f8d8..644752ff 100644 --- a/src/engine/core.cpp +++ b/src/engine/core.cpp | |||
| @@ -1103,8 +1103,6 @@ extern "C" HRESULT CoreCleanup( | |||
| 1103 | hr = CoreApply(pEngineState, pEngineState->hMessageWindow); | 1103 | hr = CoreApply(pEngineState, pEngineState->hMessageWindow); |
| 1104 | ExitOnFailure(hr, "Apply during cleanup failed"); | 1104 | ExitOnFailure(hr, "Apply during cleanup failed"); |
| 1105 | 1105 | ||
| 1106 | // Need to think about cache=always | ||
| 1107 | |||
| 1108 | LExit: | 1106 | LExit: |
| 1109 | return hr; | 1107 | return hr; |
| 1110 | } | 1108 | } |
diff --git a/src/engine/mspengine.cpp b/src/engine/mspengine.cpp index c0329d79..2c3a866a 100644 --- a/src/engine/mspengine.cpp +++ b/src/engine/mspengine.cpp | |||
| @@ -732,7 +732,11 @@ extern "C" void MspEngineFinalizeInstallRegistrationState( | |||
| 732 | __in BURN_PACKAGE* pPackage | 732 | __in BURN_PACKAGE* pPackage |
| 733 | ) | 733 | ) |
| 734 | { | 734 | { |
| 735 | Assert(pPackage->fCanAffectRegistration); | 735 | if (!pPackage->fCanAffectRegistration) |
| 736 | { | ||
| 737 | ExitFunction(); | ||
| 738 | } | ||
| 739 | |||
| 736 | pPackage->installRegistrationState = BURN_PACKAGE_REGISTRATION_STATE_ABSENT; | 740 | pPackage->installRegistrationState = BURN_PACKAGE_REGISTRATION_STATE_ABSENT; |
| 737 | 741 | ||
| 738 | for (DWORD i = 0; i < pPackage->Msp.cTargetProductCodes; ++i) | 742 | for (DWORD i = 0; i < pPackage->Msp.cTargetProductCodes; ++i) |
| @@ -745,6 +749,9 @@ extern "C" void MspEngineFinalizeInstallRegistrationState( | |||
| 745 | break; | 749 | break; |
| 746 | } | 750 | } |
| 747 | } | 751 | } |
| 752 | |||
| 753 | LExit: | ||
| 754 | return; | ||
| 748 | } | 755 | } |
| 749 | 756 | ||
| 750 | 757 | ||
