diff options
author | Sean Hall <r.sean.hall@gmail.com> | 2022-09-02 16:11:35 -0500 |
---|---|---|
committer | Sean Hall <r.sean.hall@gmail.com> | 2022-09-03 15:29:26 -0500 |
commit | eea6121f388197435529922b3cb13d3631afb9a8 (patch) | |
tree | 5740f0ff69f7e4aa9a7e8a92ff1f6fde0c1ae8d7 /src/burn/engine/core.cpp | |
parent | e263e6bca03d783ece2f2dc86345dcdfc4b9776d (diff) | |
download | wix-eea6121f388197435529922b3cb13d3631afb9a8.tar.gz wix-eea6121f388197435529922b3cb13d3631afb9a8.tar.bz2 wix-eea6121f388197435529922b3cb13d3631afb9a8.zip |
Delay closing Burn's UI thread so that it can log the bundle's restart.
Diffstat (limited to 'src/burn/engine/core.cpp')
-rw-r--r-- | src/burn/engine/core.cpp | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/src/burn/engine/core.cpp b/src/burn/engine/core.cpp index 25124c8a..3c1ed117 100644 --- a/src/burn/engine/core.cpp +++ b/src/burn/engine/core.cpp | |||
@@ -1963,6 +1963,21 @@ LExit: | |||
1963 | return hr; | 1963 | return hr; |
1964 | } | 1964 | } |
1965 | 1965 | ||
1966 | extern "C" void CoreUpdateRestartState( | ||
1967 | __in BURN_ENGINE_STATE* pEngineState, | ||
1968 | __in BURN_RESTART_STATE restartState | ||
1969 | ) | ||
1970 | { | ||
1971 | ::EnterCriticalSection(&pEngineState->csRestartState); | ||
1972 | |||
1973 | if (pEngineState->fRestarting && restartState > pEngineState->restartState) | ||
1974 | { | ||
1975 | pEngineState->restartState = restartState; | ||
1976 | } | ||
1977 | |||
1978 | ::LeaveCriticalSection(&pEngineState->csRestartState); | ||
1979 | } | ||
1980 | |||
1966 | extern "C" void CoreFunctionOverride( | 1981 | extern "C" void CoreFunctionOverride( |
1967 | __in_opt PFN_CREATEPROCESSW pfnCreateProcessW, | 1982 | __in_opt PFN_CREATEPROCESSW pfnCreateProcessW, |
1968 | __in_opt PFN_PROCWAITFORCOMPLETION pfnProcWaitForCompletion | 1983 | __in_opt PFN_PROCWAITFORCOMPLETION pfnProcWaitForCompletion |