aboutsummaryrefslogtreecommitdiff
path: root/src/burn/engine/core.h
diff options
context:
space:
mode:
authorSean Hall <r.sean.hall@gmail.com>2022-09-02 16:11:35 -0500
committerSean Hall <r.sean.hall@gmail.com>2022-09-03 15:29:26 -0500
commiteea6121f388197435529922b3cb13d3631afb9a8 (patch)
tree5740f0ff69f7e4aa9a7e8a92ff1f6fde0c1ae8d7 /src/burn/engine/core.h
parente263e6bca03d783ece2f2dc86345dcdfc4b9776d (diff)
downloadwix-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.h')
-rw-r--r--src/burn/engine/core.h18
1 files changed, 18 insertions, 0 deletions
diff --git a/src/burn/engine/core.h b/src/burn/engine/core.h
index 7e594b52..28b5ba5d 100644
--- a/src/burn/engine/core.h
+++ b/src/burn/engine/core.h
@@ -82,6 +82,16 @@ enum BURN_AU_PAUSE_ACTION
82 BURN_AU_PAUSE_ACTION_IFELEVATED_NORESUME, 82 BURN_AU_PAUSE_ACTION_IFELEVATED_NORESUME,
83}; 83};
84 84
85enum BURN_RESTART_STATE
86{
87 BURN_RESTART_STATE_NONE,
88 BURN_RESTART_STATE_REQUESTING,
89 BURN_RESTART_STATE_REQUESTED,
90 BURN_RESTART_STATE_INITIATING,
91 BURN_RESTART_STATE_INITIATED,
92 BURN_RESTART_STATE_BLOCKED,
93};
94
85 95
86// structs 96// structs
87 97
@@ -160,6 +170,10 @@ typedef struct _BURN_ENGINE_STATE
160 BURN_PIPE_CONNECTION companionConnection; 170 BURN_PIPE_CONNECTION companionConnection;
161 BURN_PIPE_CONNECTION embeddedConnection; 171 BURN_PIPE_CONNECTION embeddedConnection;
162 172
173 CRITICAL_SECTION csRestartState;
174 BOOL fRestarting;
175 BURN_RESTART_STATE restartState;
176
163 BOOL fCriticalShutdownInitiated; 177 BOOL fCriticalShutdownInitiated;
164 BURN_RESUME_MODE resumeMode; 178 BURN_RESUME_MODE resumeMode;
165 LPCWSTR wzRestartInitiatedPackageId; 179 LPCWSTR wzRestartInitiatedPackageId;
@@ -300,6 +314,10 @@ HRESULT CoreParseCommandLine(
300 __inout HANDLE* phSectionFile, 314 __inout HANDLE* phSectionFile,
301 __inout HANDLE* phSourceEngineFile 315 __inout HANDLE* phSourceEngineFile
302 ); 316 );
317void CoreUpdateRestartState(
318 __in BURN_ENGINE_STATE* pEngineState,
319 __in BURN_RESTART_STATE restartState
320 );
303void CoreFunctionOverride( 321void CoreFunctionOverride(
304 __in_opt PFN_CREATEPROCESSW pfnCreateProcessW, 322 __in_opt PFN_CREATEPROCESSW pfnCreateProcessW,
305 __in_opt PFN_PROCWAITFORCOMPLETION pfnProcWaitForCompletion 323 __in_opt PFN_PROCWAITFORCOMPLETION pfnProcWaitForCompletion