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 | |
parent | dc992c49f30e0d2b912a6449a33b4448ef862f31 (diff) | |
download | wix-c5b9c47a26ca4e9d4eea63b7219b4d34938a5f1a.tar.gz wix-c5b9c47a26ca4e9d4eea63b7219b4d34938a5f1a.tar.bz2 wix-c5b9c47a26ca4e9d4eea63b7219b4d34938a5f1a.zip |
Finalize MSP package registration states before logging them.
-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 | ||